Skip to content
Commits on Apr 13, 2007
  1. @gregkh

    Linux 2.6.20.7

    gregkh committed Apr 13, 2007
  2. @gregkh

    Update libata drive blacklist to the latest from 2.6.21

    Chuck Ebbert committed with gregkh Apr 11, 2007
    Update libata drive blacklist to the latest from 2.6.21
    
    Removes one duplicate entry from blacklist table, adds several
    entries for drives with broken NCQ.
    
    [diff between 2.6.20 and 2.6.21-rc6, with one entry removed
     that required new libata features]
    
    Signed-off-by: Chuck Ebbert <cebbert@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  3. @gregkh

    fix page leak during core dump

    Brian Pomerantz committed with gregkh Apr 1, 2007
    When the dump cannot occur most likely because of a full file system and
    the page to be written is the zero page, the call to page_cache_release()
    is missed.
    
    Signed-off-by: Brian Pomerantz <bapper@mvista.com>
    Cc: Hugh Dickins <hugh@veritas.com>
    Cc: Nick Piggin <nickpiggin@yahoo.com.au>
    Cc: David Howells <dhowells@redhat.com>
    Cc: <stable@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  4. @gregkh

    revert "retries in ext4_prepare_write() violate ordering requirements"

    Andrew Morton committed with gregkh Apr 1, 2007
    Revert b46be05.  Same reasoning as for ext3.
    
    Cc: Kirill Korotaev <dev@openvz.org>
    Cc: Ingo Molnar <mingo@elte.hu>
    Cc: Ken Chen <kenneth.w.chen@intel.com>
    Cc: Andrey Savochkin <saw@sw.ru>
    Cc: <linux-ext4@vger.kernel.org>
    Cc: Dmitriy Monakhov <dmonakhov@openvz.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  5. @gregkh

    revert "retries in ext3_prepare_write() violate ordering requirements"

    Andrew Morton committed with gregkh Apr 1, 2007
    Revert e92a4d5.
    
    Dmitry points out
    
    "When we block_prepare_write() failed while ext3_prepare_write() we jump to
     "failure" label and call ext3_prepare_failure() witch search last mapped bh
     and invoke commit_write untill it.  This is wrong!!  because some bh from
     begining to the last mapped bh may be not uptodate.  As a result we commit to
     disk not uptodate page content witch contains garbage from previous usage."
    
    and
    
    "Unexpected file size increasing."
    
       Call trace the same as it was in first issue but result is different. 
       For example we have file with i_size is zero.  we want write two blocks ,
       but fs has only one free block.
    
       ->ext3_prepare_write(...from == 0, to == 2048)
         retry:
         ->block_prepare_write() == -ENOSPC# we failed but allocated one block here.
         ->ext3_prepare_failure()
           ->commit_write( from == 0, to == 1024) # after this i_size becomes 1024 :)
         if (ret == -ENOSPC && ext3_should_retry_alloc(inode->i_sb, &retries))
            goto retry;
    
       Finally when all retries will be spended ext3_prepare_failure return
       -ENOSPC, but i_size was increased and later block trimm procedures can't
       help here.
    
    We don't appear to have the horsepower to fix these issues, so let's put
    things back the way they were for now.
    
    Cc: Kirill Korotaev <dev@openvz.org>
    Cc: Ingo Molnar <mingo@elte.hu>
    Cc: Ken Chen <kenneth.w.chen@intel.com>
    Cc: Andrey Savochkin <saw@sw.ru>
    Cc: <linux-ext4@vger.kernel.org>
    Cc: Dmitriy Monakhov <dmonakhov@openvz.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  6. @gregkh

    libata: Clear tf before doing request sense (take 3)

    Albert Lee committed with gregkh Apr 10, 2007
    libata: Clear tf before doing request sense (take 3)
    
    patch 2/4:
      Clear tf before doing request sense.
    
    This fixes the AOpen 56X/AKH timeout problem.
    (http://bugzilla.kernel.org/show_bug.cgi?id=8244)
    
    Signed-off-by: Albert Lee <albertcc@tw.ibm.com>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
    Cc: Chuck Ebbert <cebbert@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  7. @gregkh

    fix lba48 bug in libata fill_result_tf()

    Mark Lord committed with gregkh Apr 10, 2007
    2.6.21 fix lba48 bug in libata fill_result_tf()
    
    Current 2.6.21 libata does the following:
    
    void ata_tf_read(struct ata_port *ap, struct ata_taskfile *tf)
    {
            struct ata_ioports *ioaddr = &ap->ioaddr;
    
            tf->command = ata_check_status(ap);
    	...
            if (tf->flags & ATA_TFLAG_LBA48) {
                    iowrite8(tf->ctl | ATA_HOB, ioaddr->ctl_addr);
                    tf->hob_feature = ioread8(ioaddr->error_addr);
                    ...
            }
    }
    ...
    static void fill_result_tf(struct ata_queued_cmd *qc)
    {
            struct ata_port *ap = qc->ap;
    
            ap->ops->tf_read(ap, &qc->result_tf);
            qc->result_tf.flags = qc->tf.flags;
    }
    
    Based on this, those last two statements fill_result_tf()
    appear to me to be in the wrong order, in that the tf->flags
    are uninitialized at the point where tf_read() is invoked.
    So for lba48 commands, tf_read() won't be reading back the
    full lba48 register contents..
    
    Correct?
    
    This patch corrects fill_result_tf() so that the flags
    get copied to result_tf before they are used by tf_read().
    
    Signed-off-by: Mark Lord <mlord@pobox.com>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
    Cc: Chuck Ebbert <cebbert@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  8. @maxwit @gregkh

    ahci.c: walkaround for SB600 SATA internal error issue

    maxwit committed with gregkh Apr 10, 2007
    ahci.c: walkaround for SB600 SATA internal error issue
    
       There is a HW issue in ATI SB600 SATA that PxSERR.E should not be
    set on some conditions, for example, when there is no media in SATA
    CD/DVD drive or media is not ready, AHCI controller fails to execute
    ATAPI commands and reports PORT_IRQ_TF_ERR, but ATI SB600 SATA
    controller sets PxSERR.E at the
    same time, which is not necessary.
        This patch is just to ignore the INTERNAL ERROR in such case.
    Without this patch, ahci error handler will report many errors as
    below:
        ----------- cut from dmesg -----------
    ata9: soft resetting port
    ata9: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
    ata9.00: configured for UDMA/33
    ata9: EH complete
    ata9.00: exception Emask 0x40 SAct 0x0 SErr 0x800 action 0x2
    ata9.00: (irq_stat 0x40000001)
    ata9.00: cmd a0/00:00:00:00:20/00:00:00:00:00/a0 tag 0 cdb 0x0 data 0
            res 51/24:03:00:00:20/00:00:00:00:00/a0 Emask 0x40 (internal error)
    ata9: soft resetting port
    ata9: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
    ata9.00: configured for UDMA/33
    ata9: EH complete
    ata9.00: exception Emask 0x40 SAct 0x0 SErr 0x800 action 0x2
    ata9.00: (irq_stat 0x40000001)
    ata9.00: cmd a0/01:00:00:00:00/00:00:00:00:00/a0 tag 0 cdb 0x43 data 12 in
            res 51/24:03:00:00:00/00:00:00:00:00/a0 Emask 0x40 (internal error)
        -------- end cut ---------
    
    Signed-off-by: Conke Hu <conke.hu@amd.com>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
    Cc: Chuck Ebbert <cebbert@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  9. @gregkh

    libata bugfix: preserve LBA bit for HDIO_DRIVE_TASK

    Mark Lord committed with gregkh Apr 9, 2007
    libata bugfix: preserve LBA bit for HDIO_DRIVE_TASK
    
    Preserve the LBA bit in the DevSel/Head register for HDIO_DRIVE_TASK.
    
    Signed-off-by: Mark Lord <mlord@pobox.com>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
    Cc: Chuck Ebbert <cebbert@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  10. @linvjw @gregkh

    softmac: avoid assert in ieee80211softmac_wx_get_rate

    linvjw committed with gregkh Apr 4, 2007
    [PATCH] softmac: avoid assert in ieee80211softmac_wx_get_rate
    
    Unconfigured bcm43xx device can hit an assert() during wx_get_rate
    queries.  This is because bcm43xx calls ieee80211softmac_start late
    (i.e. during open instead of probe).
    
       bcm43xx_net_open ->
          bcm43xx_init_board ->
             bcm43xx_select_wireless_core ->
                ieee80211softmac_start
    
    Fix is to check that device is running before completing
    ieee80211softmac_wx_get_rate.
    
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
    Cc: Chuck Ebbert <cebbert@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  11. @neilbrown @gregkh

    knfsd: allow nfsd READDIR to return 64bit cookies

    neilbrown committed with gregkh Apr 4, 2007
    From Neil Brown <neilb@suse.de>
    
    [PATCH] knfsd: allow nfsd READDIR to return 64bit cookies
    
    ->readdir passes lofft_t offsets (used as nfs cookies) to
    nfs3svc_encode_entry{,_plus}, but when they pass it on to encode_entry it
    becomes an 'off_t', which isn't good.
    
    So filesystems that returned 64bit offsets would lose.
    
    Signed-off-by: Neil Brown <neilb@suse.de>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Chuck Ebbert <cebbert@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  12. @gregkh

    ide: use correct IDE error recovery

    Suleiman Souhlal committed with gregkh Apr 4, 2007
    ide: use correct IDE error recovery
    
    IDE error recovery is using IDLE IMMEDIATE if the drive is busy or has DRQ set.
    This violates the ATA spec (can only send IDLEÂ IMMEDIATE when drive is not
    busy) and really hoses up some drives (modern drives will not be able to
    recover using this error handling).  The correct thing to do is issue a SRST
    followed by a SET FEATURES command.  This is what Western Digital recommends
    for error recovery and what Western Digital says Windows does.  It also does
    not violate the ATA spec as far as I can tell.
    
    Bart:
    * port the patch over the current tree
    * undo the recalibration code removal
    * send SET FEATURES command after checking for good drive status
    * don't check whether the current request is of REQ_TYPE_ATA_{CMD,TASK}
      type because we need to send SET FEATURES before handling any requests
    * some pre-ATA4 drives require INITIALIZE DEVICE PARAMETERS command before
      other commands (except IDENTIFY) so send SET FEATURES only if there are
      no pending drive->special requests
    * update comments and patch description
    * any bugs introduced by this patch are mine and not Suleiman's :-)
    
    Signed-off-by: Suleiman Souhlal <suleiman@google.com>
    Acked-by: Alan Cox <alan@redhat.com>
    Cc: Chuck Ebbert <cebbert@redhat.com>
    Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
  13. @davem330 @gregkh

    Fix TCP slow_start_after_idle sysctl

    davem330 committed with gregkh Apr 10, 2007
    [TCP]: slow_start_after_idle should influence cwnd validation too
    
    For the cases that slow_start_after_idle are meant to deal
    with, it is almost a certainty that the congestion window
    tests will think the connection is application limited and
    we'll thus decrease the cwnd there too.  This defeats the
    whole point of setting slow_start_after_idle to zero.
    
    So test it there too.
    
    We do not cancel out the entire tcp_cwnd_validate() function
    so that if the sysctl is changed we still have the validation
    state maintained.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  14. @kaber @gregkh

    Fix tcindex classifier ABI borkage...

    kaber committed with gregkh Apr 10, 2007
    [NET_SCHED]: cls_tcindex: fix compatibility breakage
    
    Userspace uses an integer for TCA_TCINDEX_SHIFT, the kernel was changed
    to expect and use a u16 value in 2.6.11, which broke compatibility on
    big endian machines. Change back to use int.
    
    Reported by Ole Reinartz <ole.reinartz@gmx.de>
    
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  15. @herbertx @gregkh

    Fix IPSEC replay window handling

    herbertx committed with gregkh Apr 10, 2007
    [IPSEC]: Reject packets within replay window but outside the bit mask
    
    Up until this point we've accepted replay window settings greater than
    32 but our bit mask can only accomodate 32 packets.  Thus any packet
    with a sequence number within the window but outside the bit mask would
    be accepted.
    
    This patch causes those packets to be rejected instead.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  16. @gregkh

    Fix TCP receiver side SWS handling.

    John Heffner committed with gregkh Apr 10, 2007
    [TCP]: Do receiver-side SWS avoidance for rcvbuf < MSS.
    
    Signed-off-by: John Heffner <jheffner@psc.edu>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  17. @davem330 @gregkh

    Fix scsi sense handling

    davem330 committed with gregkh Apr 10, 2007
    [SCSI]: Fix scsi_send_eh_cmnd scatterlist handling
    
    This fixes a regression caused by commit:
    
    2dc611d
    
    The sense buffer code in scsi_send_eh_cmnd was changed to use
    alloc_page() and a scatter list, but the sense data copy was not
    updated to match so what we actually get in the sense buffer is total
    grabage starting with the kernel address of the struct page we got.
    Basically the stack frame of scsi_send_eh_cmd() is what ends up
    in the sense buffer.
    
    Depending upon how pointers look on a given platform, you can
    end up getting sr_ioctl.c errors when you mount a cdrom.  If
    the CDROM gives a check condition for GPCMD_GET_CONFIGURATION issued
    by drivers/cdrom/cdrom.c:cdrom_mmc_profile(), sr_ioctl will
    spit out this error message in sr_do_ioctl() with the way pointers
    are on sparc64:
    
    		default:
    			printk(KERN_ERR "%s: CDROM (ioctl) error, command: ", cd->cdi.name);
    			__scsi_print_command(cgc->cmd);
    			scsi_print_sense_hdr("sr", &sshdr);
    			err = -EIO;
    
    This is the error Tom Callaway reported in:
    
    http://marc.info/?l=linux-sparc&m=117407453208101&w=2
    
    Anyways, fix this by using page_address(sgl.page) which is OK
    because we know this is low-mem due to GFP_ATOMIC.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Acked-by: Christoph Hellwig <hch@lst.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  18. @gregkh

    Fix length validation in rawv6_sendmsg()

    YOSHIFUJI Hideaki committed with gregkh Apr 10, 2007
    [IPv6]: Fix incorrect length check in rawv6_sendmsg()
    
    In article <20070329.142644.70222545.davem@davemloft.net> (at Thu, 29 Mar 2007 14:26:44 -0700 (PDT)), David Miller <davem@davemloft.net> says:
    
    > From: Sridhar Samudrala <sri@us.ibm.com>
    > Date: Thu, 29 Mar 2007 14:17:28 -0700
    >
    > > The check for length in rawv6_sendmsg() is incorrect.
    > > As len is an unsigned int, (len < 0) will never be TRUE.
    > > I think checking for IPV6_MAXPLEN(65535) is better.
    > >
    > > Is it possible to send ipv6 jumbo packets using raw
    > > sockets? If so, we can remove this check.
    >
    > I don't see why such a limitation against jumbo would exist,
    > does anyone else?
    >
    > Thanks for catching this Sridhar.  A good compiler should simply
    > fail to compile "if (x < 0)" when 'x' is an unsigned type, don't
    > you think :-)
    
    Dave, we use "int" for returning value,
    so we should fix this anyway, IMHO;
    we should not allow len > INT_MAX.
    
    Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
    Acked-by: Sridhar Samudrala <sri@us.ibm.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  19. @kaber @gregkh

    Fix IFB net driver input device crashes

    kaber committed with gregkh Apr 10, 2007
    [IFB]: Fix crash on input device removal
    
    The input_device pointer is not refcounted, which means the device may
    disappear while packets are queued, causing a crash when ifb passes packets
    with a stale skb->dev pointer to netif_rx().
    
    Fix by storing the interface index instead and do a lookup where neccessary.
    
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Acked-by: Jamal Hadi Salim <hadi@cyberus.ca>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  20. @kaber @gregkh

    NETFILTER: ipt_CLUSTERIP: fix oops in checkentry function

    kaber committed with gregkh Apr 10, 2007
    [NETFILTER]: ipt_CLUSTERIP: fix oops in checkentry function
    
    The clusterip_config_find_get() already increases entries reference
    counter, so there is no reason to do it twice in checkentry() callback.
    
    This causes the config to be freed before it is removed from the list,
    resulting in a crash when adding the next rule.
    
    Signed-off-by: Jaroslav Kysela <perex@suse.cz>
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  21. @gregkh

    8139too: RTNL and flush_scheduled_work deadlock

    Francois Romieu committed with gregkh Apr 5, 2007
    Your usual dont-flush_scheduled_work-with-RTNL-held stuff.
    
    It is a bit different here since the thread runs permanently
    or is only occasionally kicked for recovery depending on the
    hardware revision.
    
    Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
    Cc: Ben Greear <greearb@candelatech.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  22. @neilbrown @gregkh

    Fix calculation for size of filemap_attr array in md/bitmap.

    neilbrown committed with gregkh Apr 11, 2007
    If 'num_pages' were ever 1 more than a multiple of 8 (32bit platforms)
    for of 16 (64 bit platforms). filemap_attr would be allocated one
    'unsigned long' shorter than required.  We need a round-up in there.
    
    
    Signed-off-by: Neil Brown <neilb@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  23. @gregkh

    HID: Do not discard truncated input reports

    Adam Kropelin committed with gregkh Apr 11, 2007
    HID: Do not discard truncated input reports
    
    Truncated reports should not be discarded since it prevents buggy
    devices from communicating with userspace.
    
    Prior to the regession introduced in 2.6.20, a shorter-than-expected
    report in hid_input_report() was passed thru after having the missing
    bytes cleared. This behavior was established over a few patches in the
    2.6.early-teens days, including commit
    cd61045.
    
    This patch restores the previous behavior and fixes the regression.
    
    Signed-off-by: Adam Kropelin <akropel1@rochester.rr.com>
    Signed-off-by: Jiri Kosina <jkosina@suse.cz>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  24. @mtdcr @gregkh

    DVB: pluto2: fix incorrect TSCR register setting

    mtdcr committed with gregkh Apr 8, 2007
    DVB: pluto2: fix incorrect TSCR register setting
    
    The ADEF bits in the TSCR register have different meanings in read
    and write mode. For this reason ADEF has to be reset on every
    read-modify-write operation.
    
    This patch introduces a special write function for this register, which
    takes care of it.
    
    Thanks to Holger Magnussen for pointing my nose at this problem.
    
    (cherry picked from commit 1489f90)
    
    Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
    Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  25. @mtdcr @gregkh

    DVB: tda10086: fix DiSEqC message length

    mtdcr committed with gregkh Apr 8, 2007
    DVB: tda10086: fix DiSEqC message length
    
    Setting the message length to zero means to send one byte, so you need a
    subtraction instead of an addition.
    
    (cherry picked from commit d420cb4)
    
    Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
    Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  26. @gregkh

    sky2: phy workarounds for Yukon EC-U A1

    Stephen Hemminger committed with gregkh Apr 7, 2007
    The workaround Yukon EC-U wasn't comparing with correct
    version and wasn't doing correct setup. Without it, 88e8056
    throws all sorts of errors.
    
    Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  27. @gregkh

    sky2: turn on clocks when doing resume

    Stephen Hemminger committed with gregkh Apr 7, 2007
    Some of these chips are disabled until clock is enabled.
    This fixes:
         http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=404107
    
    Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  28. @gregkh

    sky2: turn carrier off when down

    Stephen Hemminger committed with gregkh Apr 7, 2007
    Driver needs to turn off carrier when down.
    
    Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  29. @gregkh

    skge: turn carrier off when down

    Stephen Hemminger committed with gregkh Apr 7, 2007
    Driver needs to turn off carrier when down, otherwise it can
    confuse bonding and bridging and looks like carrier is on immediately
    when it is brought back up.
    
    Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  30. @gregkh

    sky2: reliable recovery

    Stephen Hemminger committed with gregkh Apr 4, 2007
    This adds working recovery from transmit timeouts.  Previous code
    didn't do enough to truly reset chip.
    
    It is a backport of the 2.6.21 code.
    
    Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  31. @gregkh

    i386: fix file_read_actor() and pipe_read() for original i386 systems

    Thomas Gleixner committed with gregkh Apr 2, 2007
    The __copy_to_user_inatomic() calls in file_read_actor() and pipe_read()
    are broken on original i386 machines, where WP-works-ok == false, as
    __copy_to_user_inatomic() on such systems calls functions which might
    sleep and/or contain cond_resched() calls inside of a kmap_atomic()
    region.
    
    The original check for WP-works-ok was in access_ok(), but got moved
    during the 2.5 series to fix a race vs. swap.
    
    Return the number of bytes to copy in the case where we are in an atomic
    region, so the non atomic code pathes in file_read_actor() and
    pipe_read() are taken.
    
    This could be optimized to avoid the kmap_atomic by moving the check for
    WP-works-ok into fault_in_pages_writeable(), but this is more intrusive
    and can be done later.
    
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Acked-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  32. @gregkh

    kbuild: fix dependency generation

    Jan Beulich committed with gregkh Apr 1, 2007
    Commit 2e3646e changed the way
    the split config tree is built, but failed to also adjust fixdep
    accordingly - if changing a config option from or to m, files
    referencing the respective CONFIG_..._MODULE (but not the
    corresponding CONFIG_...) didn't get rebuilt.
    
    The problem is that trisate symbol are represent with three
    different symbols:
    SYMBOL=n => no symbol defined
    SYMBOL=y => CONFIG_SYMBOL defined to '1'
    SYMBOL=m => CONFIG_SYMBOL_MODULE defined to '1'
    
    But conf_split_config do not distingush between the =y and =m case,
    so only the =y case is honoured.
    This is fixed in fixdep so when a CONFIG symbol with
    _MODULE is found we skip that part and only look
    for the CONFIG_SYMBOL version.
    
    Signed-off-by: Jan Beulich <jbeulich@novell.com>
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Commits on Apr 6, 2007
  1. @chriswright

    Linux 2.6.20.6

    chriswright committed Apr 6, 2007
  2. @herbertx @chriswright

    [PATCH] CRYPTO api: Use the right value when advancing scatterwalk_co…

    herbertx committed with chriswright Mar 31, 2007
    …pychunks
    
    In the scatterwalk_copychunks loop, We should be advancing by
    len_this_page and not nbytes.  The latter is the total length.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Chris Wright <chrisw@sous-sol.org>
  3. @chriswright

    [PATCH] uml: fix static linking for real

    Paolo 'Blaisorblade' Giarrusso committed with chriswright Mar 31, 2007
    There was a typo in commit b40b478,
    preventing it from working - 32bit binaries crashed hopelessly before
    the below fix and work perfectly now.
    
    Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    [chrisw: update changelog to reflect -stable commit id]
    Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Something went wrong with that request. Please try again.