1. 05 Sep, 2002 4 commits
  2. 04 Sep, 2002 3 commits
    • Linus Torvalds's avatar
      Fix IO-APIC edge IRQ handling. IRQ_INPROGRESS was cleared spuriously · e42e97d6
      Linus Torvalds authored
      if a new edge happened while we were still processing the previous
      one.
      
      Then, if a _third_ edge came in, it would actually cause a reentrant
      irq handler invocation, because the original INPROGRESS bit was now
      lost.
      
      This was actually seen on IDE in PIO mode.
      e42e97d6
    • Matthew Wilcox's avatar
      [PATCH] move AGP PCI defines to pci_ids.h · 863032a9
      Matthew Wilcox authored
      Unify the PCI device ID constants used by AGP with the normal Linux ones.
      863032a9
    • Paul Mackerras's avatar
      [PATCH] fix create_elf_tables on PPC · 6860f192
      Paul Mackerras authored
      create_elf_tables in fs/binfmt_elf.c now sets up the list of aux table
      entries in a buffer on the kernel stack before copying it to the user
      stack.
      
      Unfortunately, while the buffer is big enough for most architectures, it
      isn't big enough on PPC, which uses 5 extra aux table entries (put on
      with ARCH_DLINFO).  The following patch increases the buffer to be big
      enough for PPC.  (Note that each aux table entry uses two elements of
      the elf_info array.)
      6860f192
  3. 05 Sep, 2002 10 commits
  4. 04 Sep, 2002 1 commit
  5. 03 Sep, 2002 22 commits
    • Rusty Russell's avatar
      [PATCH] list_t removal · 97460db9
      Rusty Russell authored
      This removes list_t, which is a gratuitous typedef for a "struct
      list_head".  Unless there is good reason, the kernel doesn't usually
      typedef, as typedefs cannot be predeclared unlike structs.
      97460db9
    • Rusty Russell's avatar
      [PATCH] Important per-cpu fix. · bd0f8cb9
      Rusty Russell authored
      Frankly, I'm amazed the kernel worked for long without this.
      
      Every linker script thinks the section is called .data.percpu.
      Without this patch, every CPU ends up sharing the same "per-cpu"
      variable.
      
      This might explain the wierd per-cpu problem reports from Andrew and
      Dave, and also that nagging feeling that I'm an idiot...
      bd0f8cb9
    • Rusty Russell's avatar
      [PATCH] daemonize() calls reparent_to_init cleanup · 1350c3f2
      Rusty Russell authored
       This makes daemonize() call reparent_to_init() itself, as long
      suggested for 2.5, and fixes the callers so they don't call it again.
      Also fixes callers which set current->tty to NULL themselves (also
      no longer neccessary).
      1350c3f2
    • Rusty Russell's avatar
      [PATCH] Early child_reaper initialization · 3c14138b
      Rusty Russell authored
      This sets child_reaper to the idle thread upon creation, so that
      ksoftirqd's reparent_to_init call doesn't get the swapper as parent.
      3c14138b
    • Andi Kleen's avatar
      [PATCH] Fix RELOC_HIDE miscompilation · efec05b7
      Andi Kleen authored
      RELOC_HIDE got miscompiled on gcc3.1/x86-64 in the access to softirq.c's per
      cpu variables.  This fixes the problem.
      
      Clearly to hide the relocation the addition needs to be done after the
      value obfuscation, not before.
      
      I don't know if it triggers on other architectures (x86-64 is especially
      stressf here because it has negative kernel addresses), but seems like the
      right thing to do.
      efec05b7
    • Andries E. Brouwer's avatar
      [PATCH] sddr09.c MODE SENSE fixes · 618cb2b6
      Andries E. Brouwer authored
      Teach usb/storage/sddr09.c how to return less than a full page of sense
      data.
      618cb2b6
    • Andries E. Brouwer's avatar
      [PATCH] try more sd.c MODE SENSE modes · e91004e8
      Andries E. Brouwer authored
      In sd.c we call MODE SENSE (6) in order to find out whether the
      device is write protected. The info we need is in byte 2, the
      header of the MODE SENSE answer, but in the request we have to
      specify (i) what page(s) we want, and (ii) how many bytes we want.
      
      Long ago we asked for 12 bytes from page 1 (Daniel Roche, 1.3.35).
      Matthew Dharm made this 8 bytes from page 3F (all pages), patch-2.4.0-test8.
      In patch-2.4.10 the 8 was increased to 255.
      
      I found on the one hand devices that only react to page 0
      (the vendor page), and return an error for page 3F.
      And on the other hand devices that are unable to handle requests
      for more bytes than they actually have.
      
      So, it seems that the cautious way to ask for MODE SENSE data is
      to first ask for the header only, see how much is available,
      and then ask for everything.
      
      The patch below first separates out the MODE SENSE call,
      and then tries it three times: on all pages (3F), only the first
      four bytes; on the vendor page (0), only the first four bytes;
      on all pages (3F), 255 bytes.
      
      This should be at least as robust as our current code.
      I tried it on 8 SCSI devices (of which 2 fail under 2.5.33)
      and found no problems.
      e91004e8
    • Andrew Morton's avatar
      [PATCH] use page_to_pfn() instead of mem_map[] · 27254059
      Andrew Morton authored
      A patch from Martin Bligh which cleans up the open-coded uses of
      mem_map for ia32.  Basically it replaces
      
      mem_map + pagenr
      
      with
      
      pfn_to_page(pagenr)
      
      in lots of places.  Because mem_map[] doesn't work like that with
      discontigmem.
      
      It also fixes a bug in bad_range, that happens to work for contig mem
      systems, but is incorrect.  Tested both with and without discontigmem
      support.
      27254059
    • Andrew Morton's avatar
      [PATCH] discontigmem support for ia32 NUMA · 0d0bdc8e
      Andrew Morton authored
       - All the support macros which assume a linear mem_map[] have been
         wrapped in !CONFIG_DISCONTIGMEM.  pfn_to_page, page_to_pfn,
         page_to_phys, pmd_page, kern_addr_valid.
      
       - Move some initialsation macros into setup.h so they can be used in
         the i386 discontig.c (INITRD_START, INITRD_SIZE).
      
       - Alternate version of the bootmem allocator
      
       - add i386 discontig support and numaq support.
      0d0bdc8e
    • Andrew Morton's avatar
      [PATCH] restructure mem_init for ia32 discontigmem · 6db13e2b
      Andrew Morton authored
       - Pull the middle out of one_highpage_init() so that the i386 NUMA
         patch can call it on a per-page basis.
      
       - Move a few lines out of mem_init() into the new
         set_max_mapnr_init(), which the i386 NUMA code requires.
      6db13e2b
    • Andrew Morton's avatar
      [PATCH] reorganise setup_arch() for ia32 discontigmem · b9ba3a05
      Andrew Morton authored
      This restructures setup_arch() for i386 to make it easier to include the
      i386 numa changes (for CONFIG_DISCONTIGMEM) I've been working on.  It
      also makes setup_arch() easier to read.  A version of this patch is the
      in 2.4 aa tree.
      
      This does not depend on the other patches I'm submitting today, but my
      discontigmem patch does depend on this one.
      
      I've tested this patch on the following configurations: UP, SMP, SMP
      PAE, multiquad, multiquad PAE.
      b9ba3a05
    • Andrew Morton's avatar
      [PATCH] convert node/zone_start_paddr to pfns · 2589a05f
      Andrew Morton authored
      I've had ia32-discontigmem under test for a month, uneventfully.  Possibly
      because I don't have a machine to test it on....
      
      A major part of this work is a general move to convert the low-level
      memory management to consistently use pageframe numbers.  It's a bit
      schizo at present..
      
      This patch was written by Martin Bligh.  A version of this patch is in
      the 2.4 aa tree.
      
      It changes the unsigned longs node_start_paddr and zone_start_paddr to
      page frame numbers.  This is necessary because a PAE address is 36 bits
      and cannot be represented in an unsigned long.
      
       - The per-node physical memory start address node_start_paddr becomes
         a pfn, node_start_pfn.
      
       - The per-zone physical memory start address zone_start_paddr becomes
         a pfn, zone_start_pfn.
      
       - free_area_init_node() takes a pfn rather than a physical address.
      
      Patricia has tested this patch on the following configurations: UP,
      SMP, SMP PAE, multiquad, multiquad PAE, multiquad DISCONTIGMEM,
      multiquad DISCONTIGMEM PAE.
      2589a05f
    • Andrew Morton's avatar
      [PATCH] place rmap locking in rmap-locking.h · 11bf19bc
      Andrew Morton authored
      The rmap locking inlines are causing some header file
      dependency/ordering problems - move them out of page-flags.h and into
      their own header file.
      11bf19bc
    • Linus Torvalds's avatar
      Merge master.kernel.org:/home/davem/BK/sparc-2.5 · ef5bf0b5
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      ef5bf0b5
    • Linus Torvalds's avatar
      Merge master.kernel.org:/home/davem/BK/net-2.5 · 055be65c
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      055be65c
    • Albert Cranford's avatar
      [PATCH] 2.5.33 dmi_scan blacklist ibm thinkpad for i2c/sensors · 24d87639
      Albert Cranford authored
      This adds IBM thinkpads to a list of mainboards that should not be
      scanned by i2c sensors during detection phase.
      24d87639
    • David S. Miller's avatar
    • David S. Miller's avatar
      Merge nuts.ninka.net:/home/davem/src/BK/network-2.5 · 3d5fa36b
      David S. Miller authored
      into nuts.ninka.net:/home/davem/src/BK/net-2.5
      3d5fa36b
    • David S. Miller's avatar
      Merge nuts.ninka.net:/home/davem/src/BK/sparcwork-2.5 · 85b8e609
      David S. Miller authored
      into nuts.ninka.net:/home/davem/src/BK/sparc-2.5
      85b8e609
    • Robert Love's avatar
      [PATCH] bad: schedule() with irqs disabled! · 1314cad1
      Robert Love authored
      OK, Linus, you are right... there are enough instances of this we are
      not going to find them all (although I suspect Andrew's slab.c fixes
      will cover most of the cases).  Further, I think we can should actually
      purposely call preempt_schedule() in certain cases after interrupt
      reenable to check for reschedules...
      
      Let's just make it a rule "no preemption if interrupts are off" and
      enforce that.
      1314cad1
    • Robert Love's avatar
      [PATCH] flag type cleanup · d3a7fafa
      Robert Love authored
      This fixes various instances of the interrupt flag variable not being
      the proper `unsigned long', most notably kernel/softirq.c ...
      d3a7fafa
    • Linus Torvalds's avatar
      Merge home.transmeta.com:/home/torvalds/v2.5/linux · 2a3f7d06
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/sigio
      2a3f7d06