1. 22 Nov, 2003 1 commit
    • Davide Libenzi's avatar
      [PATCH] More SiS interrupt routing · f6967f9a
      Davide Libenzi authored
      It turns out that the SiS irq routing logic doesn't go by chipset
      after all - it's just that some pirq entries are "legacy" numbers,
      while others are raw offsets into PCI config space (and the legacy
      numbers are more commonly used with the older chipsets, which
      explains the correlations).
      
      This simplifies the router code substantially.
      f6967f9a
  2. 21 Nov, 2003 12 commits
  3. 20 Nov, 2003 6 commits
  4. 19 Nov, 2003 8 commits
  5. 18 Nov, 2003 13 commits
    • Andrew Morton's avatar
      [PATCH] disallow modular BINFMT_ELF · 44cb023a
      Andrew Morton authored
      From: Adrian Bunk <bunk@fs.tum.de>
      
      Modular BINFMT_ELF doesn't build, and is pretty pathological anyway.
      
      So just make it a boolean rather than a tristate.
      44cb023a
    • Andrew Morton's avatar
      [PATCH] mpparse printk fix · 97c52a80
      Andrew Morton authored
      From: Herbert Xu <herbert@gondor.apana.org.au>
      
      The recent patch produces a message with no terminating newline on the
      machine in question.  This is because one of the four bytes that you're
      printing out is NUL.  The following patch avoids that problem.
      97c52a80
    • Andrew Morton's avatar
      [PATCH] resource.c bounds checking fix · 9069925a
      Andrew Morton authored
      From: Jeremy Higdon <jeremy@classic.engr.sgi.com>
      
      I believe there is a bug in kernel/resource.c.
      
      We (SGI sn2 I/O code) are using this for allocating dma map resources, and
      we tracked failures we were seeing to find_resource().
      
      The problem is that when testing bounds in the forever loop, the end bound
      would be one higher than it should be if it gets set from another resource
      (it's set to the proper value when it gets set from the root), causing
      find_resource to return an invalid min/max when the requested size was one
      greater than would fit between two existing resources.
      9069925a
    • Andrew Morton's avatar
      [PATCH] fs/ext[23]/xattr.c pointer arithmetic fix · 0693b768
      Andrew Morton authored
      From: Andreas Gruenbacher <agruen@suse.de>
      
      64-bit pointer arithmetic bug in xattr code
      
      The int offset is not enought to hold the difference between arbitraty
      pointers on 64-bit machines.  Compute the offset of here and last inside
      HDR(bh) instead.
      0693b768
    • Andrew Morton's avatar
      [PATCH] cpu_sibling_map fix · d174dc06
      Andrew Morton authored
      From: James Cleverdon <jamesclv@us.ibm.com>
      
      On summit-based machines the cpu_sibling_map data has been hosed for some
      time.  I found out why in Intel's IA-32 Software Deveveopers' Manual Vol 2
      under CPUID.  Looks like the value that cpuid returns is the one latched at
      reset, and doesn't reflect any changes made by the BIOS later:
      
        * Local APIC ID (high byte of EBX)--this number is the 8-bit ID that
          is assigned to the local APIC on the processor during power up.  This
          field was introduced in the Pentium 4 processor.
      
      Also, the code in init_intel was a bit overdesigned.  Until Intel releases
      a chip with a non-power-of-2 sibling count on it, there's no point in all
      that bit bashing.
      d174dc06
    • Andrew Morton's avatar
      [PATCH] init.h needs to include compiler.h · 82120e6a
      Andrew Morton authored
      From: Jun Sun <jsun@mvista.com>
      
      It is needed for all those "__attribute_used__" etc to be valid.
      
      Also, it seems that when compiling a file ending in ".S", gcc-2.95.3 does not
      expand __GNUC__ at all.  This causes the compiler version check to fail when
      building vsyscall.S.  So add __ASSEMBLY__ wrappers in there.
      82120e6a
    • Andrew Morton's avatar
      [PATCH] ext2 block allocator fixes · a9bca018
      Andrew Morton authored
      Fix a couple of problems which were introduced by a recent race fix in the
      ext2 block allocator:
      
      - if the allocation attempt raced, and lost the race then a new attempt is
        made.  But the earlier reservation must be put back first.
      
        Add a call to group_release_blocks() to fix this.
      
      - if the filesystem is genuinely corrupted then the code as-is can get
        stuck in an infinite loop, thinking that a blockgroup has free blocks and
        then discovering that its bitmap is full.
      
        Fix this by baling out after having scanned all blockgroups twice.
      
        (Thanks Muli Ben-Yehuda <mulix@mulix.org> for spotting this).
      a9bca018
    • Andrew Morton's avatar
      [PATCH] ext3_new_inode fixlet · bc5de0cd
      Andrew Morton authored
      From: Alex Tomas <alex@clusterfs.com>
      
      If the ext3 inode allocator tries to claim an inode and fails because
      another CPU got in there first it will then advance onto the next
      blockgroup and try again.
      
      Change it to advance onto the next inode within the same blockgroup
      instead.
      bc5de0cd
    • Andrew Morton's avatar
      [PATCH] ide-scsi: warn when used for cdroms · b758ab40
      Andrew Morton authored
      From: Jens Axboe <axboe@suse.de>
      
      Print a runtime warning if ide-scsi is used on a cd device.
      
      Modify the ide-scsi menuconfig help to reflect that ide-scsi should
      not be used for cd burning.
      b758ab40
    • Andrew Morton's avatar
      [PATCH] fix percpu_counter_mod linkage problem · bfe687b3
      Andrew Morton authored
      If both ext2 and ext3 are built as modules there is nothing to pull
      percpu_counter_mod() into the kernel build and the ext2 and ext3 modules do
      not load.
      
      So move percpu_counter_mod() out of lib.a.
      bfe687b3
    • Andrew Morton's avatar
      [PATCH] remove ext2_reserve_inode() · e71775ef
      Andrew Morton authored
      It now has no callers.
      e71775ef
    • Andrew Morton's avatar
      [PATCH] Fix bugs in ext2_new_inode() · 0fa7a1a9
      Andrew Morton authored
      From: Mingming Cao <cmm@us.ibm.com>
      
      I found several bugs/issues in the ext2_new_inode() code:
      
      1) The for loop variable "i" is used to save the inode offset.  In the
         case of failure, the loop variable could be crapped.  So it is possible
         to quit searching before looking at every block groups.
      
      2) The number of free inodes in the selected group is possibly being
         miscalculated.  The counter is only decreased in the find_group_xx()
         functions for the initial selected group.  If the initial try failed,
         and succeed in finding a free inode in other group, the counter for that
         group will not to be decreased.
      
      3) In case of the concurrent case, going back to find_group_xx()
         functions are unnecessary, it will only get the same group as before.
      
      The following patch fixed those issues.  Ideas are stolen from
      ext3_new_inode().
      0fa7a1a9
    • Andrew Morton's avatar
      [PATCH] ia32: hugetlb needs pse · 85479eb6
      Andrew Morton authored
      From: Zwane Mwaikambo <zwane@arm.linux.org.uk>
      
      If the CPU doesn't support PSE we cannot use hugetlb pages.
      85479eb6