1. 28 5月, 2009 4 次提交
  2. 27 5月, 2009 20 次提交
    • J
      cifs: tighten up default file_mode/dir_mode · f55ed1a8
      Jeff Layton 提交于
      The current default file mode is 02767 and dir mode is 0777. This is
      extremely "loose". Given that CIFS is a single-user protocol, these
      permissions allow anyone to use the mount -- in effect, giving anyone on
      the machine access to the credentials used to mount the share.
      
      Change this by making the default permissions restrict write access to
      the default owner of the mount. Give read and execute permissions to
      everyone else. These are the same permissions that VFAT mounts get by
      default so there is some precedent here.
      
      Note that this patch also removes the mandatory locking flags from the
      default file_mode. After having looked at how these flags are used by
      the kernel, I don't think that keeping them as the default offers any
      real benefit. That flag combination makes it so that the kernel enforces
      mandatory locking.
      
      Since the server is going to do that for us anyway, I don't think we
      want the client to enforce this by default on applications that just
      want advisory locks. Anyone that does want this behavior can always
      enable it by setting the file_mode appropriately.
      Signed-off-by: NJeff Layton <jlayton@redhat.com>
      Signed-off-by: NSteve French <sfrench@us.ibm.com>
      f55ed1a8
    • J
      cifs: fix artificial limit on reading symlinks · 46a7574c
      Jeff Layton 提交于
      There's no reason to limit the size of a symlink that we can read to
      4000 bytes. That may be nowhere near PATH_MAX if the server is sending
      UCS2 strings. CIFS should be able to read in a symlink up to the size of
      the buffer. The size of the header has already been accounted for when
      creating the slabcache, so CIFSMaxBufSize should be the correct size to
      pass in.
      
      Fixes samba bug #6384.
      Signed-off-by: NJeff Layton <jlayton@redhat.com>
      Signed-off-by: NSteve French <sfrench@us.ibm.com>
      46a7574c
    • L
      Merge branch 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6 · e2a1b9ee
      Linus Torvalds 提交于
      * 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:
        NFSv4: Fix the case where NFSv4 renewal fails
        nfs: fix build error in nfsroot with initconst
        XPRTRDMA: fix client rpcrdma FRMR registration on mlx4 devices
      e2a1b9ee
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 · 878a4f52
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
        ALSA: hda - Add missing check of pin vref 50 and others in Realtek codecs
        ALSA: hda - Add 5stack-no-fp model for STAC927x
        ALSA: hda - Add forced codec-slots for ASUS W5Fm
      878a4f52
    • L
      Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq · 733be82e
      Linus Torvalds 提交于
      * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq:
        [CPUFREQ] powernow-k8: determine exact CPU frequency for HW Pstates
        [CPUFREQ] powernow-k8 cleanup msg if BIOS does not export ACPI _PSS cpufreq data
        [CPUFREQ] fix timer teardown in ondemand governor
        [CPUFREQ] fix timer teardown in conservative governor
        [CPUFREQ] remove rwsem lock from CPUFREQ_GOV_STOP call
        [CPUFREQ] powernow-k7 build fix when ACPI=n
        [CPUFREQ] add atom family to p4-clockmod
      733be82e
    • R
      lguest: fix on Intel when KVM loaded (unhandled trap 13) · 56434622
      Rusty Russell 提交于
      When KVM is loaded, and hence VT set up, the vmcall instruction in an
      lguest guest causes a #GP, not #UD.
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      56434622
    • T
      kmod: Release sub_info on cred allocation failure. · ab2b7eba
      Tetsuo Handa 提交于
      call_usermodehelper_setup() forgot to kfree(sub_info)
      when prepare_usermodehelper_creds() failed.
      Signed-off-by: NTetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ab2b7eba
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 · d4a76f8a
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (21 commits)
        r8169: avoid losing MSI interrupts
        tcp: tcp_vegas ssthresh bugfix
        mac8390: fix regression caused during net_device_ops conversion
        gianfar: fix BUG under load after introduction of skb recycling
        wimax/i2400m: usb: fix device reset on autosuspend while not yet idle
        RxRPC: Error handling for rxrpc_alloc_connection()
        ipv4: Fix oops with FIB_TRIE
        pktgen: do not access flows[] beyond its length
        gigaset: beyond ARRAY_SIZE of iwb->data
        IPv6: set RTPROT_KERNEL to initial route
        net: fix rtable leak in net/ipv4/route.c
        net: fix length computation in rt_check_expire()
        wireless: beyond ARRAY_SIZE of intf->crypto_stats
        iwlwifi: update 5000 ucode support to version 2 of API
        cfg80211: fix race between core hint and driver's custom apply
        airo: fix airo_get_encode{,ext} buffer overflow like I mean it...
        ath5k: fix interpolation with equal power levels
        iwlwifi: do not cancel delayed work inside spin_lock_irqsave
        ath5k: fix exp off-by-one when computing OFDM delta slope
        wext: verify buffer size for SIOCSIWENCODEEXT
        ...
      d4a76f8a
    • L
      Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · 60a0cd52
      Linus Torvalds 提交于
      * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
        powerpc/mm: Fix broken MMU PID stealing on !SMP
      60a0cd52
    • L
      Merge branch 'for-linus' of git://neil.brown.name/md · e25e0920
      Linus Torvalds 提交于
      * 'for-linus' of git://neil.brown.name/md:
        md: don't use locked_ioctl.
        md: don't update curr_resync_completed without also updating reshape_position.
        md: raid5: avoid sector values going negative when testing reshape progress.
        md: export 'frozen' resync state through sysfs
        md: bitmap: improve bitmap maintenance code.
        md: improve errno return when setting array_size
        md: always update level / chunk_size / layout when writing v1.x metadata.
      e25e0920
    • T
      NFSv4: Fix the case where NFSv4 renewal fails · 95baa25c
      Trond Myklebust 提交于
      If the asynchronous lease renewal fails (usually due to a soft timeout),
      then we _must_ schedule state recovery in order to ensure that we don't
      lose the lease unnecessarily or, if the lease is already lost, that we
      recover the locking state promptly...
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      95baa25c
    • S
      nfs: fix build error in nfsroot with initconst · d0367a50
      Sam Ravnborg 提交于
      fix build error with latest kbuild adjustments to initconst.
      
      The commit a447c093 ("vfs: Use
      const for kernel parser table") changed:
      
          static match_table_t __initdata tokens = {
      to
          static match_table_t __initconst tokens = {
      
      But the missing const causes popwerpc to fail with latest
      updates to __initconst like this:
      
      fs/nfs/nfsroot.c:400: error: __setup_str_nfs_root_setup causes a section type conflict
      fs/nfs/nfsroot.c:400: error: __setup_str_nfs_root_setup causes a section type conflict
      
      The bug is only present with kbuild-next.
      Following patch has been build tested.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      Cc: Steven Whitehouse <swhiteho@redhat.com>
      Cc: Stephen Rothwell <sfr@canb.auug.org.au>
      Acked-by: NJan Beulich <jbeulich@novell.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      d0367a50
    • V
      XPRTRDMA: fix client rpcrdma FRMR registration on mlx4 devices · 68743082
      Vu Pham 提交于
      mlx4/connectX FRMR requires local write enable together with remote
      rdma write enable. This fixes NFS/RDMA operation over the ConnectX
      Infiniband HCA in the default memreg mode.
      Signed-off-by: NVu Pham <vu@mellanox.com>
      Signed-off-by: NTom Talpey <tmtalpey@gmail.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      68743082
    • A
      [CPUFREQ] powernow-k8: determine exact CPU frequency for HW Pstates · ca446d06
      Andreas Herrmann 提交于
      Slightly modified by trenn@suse.de -> only do this on fam 10h and fam 11h.
      
      Currently powernow-k8 determines CPU frequency from ACPI PSS objects, but
      according to AMD family 11h BKDG this frequency is just a rounded value:
      
        "CoreFreq (MHz) = The CPU COF specified by MSRC001_00[6B:64][CpuFid]
        rounded to the nearest 100 Mhz."
      
      As a consequnce powernow-k8 reports wrong CPU frequency on some systems,
      e.g. on Turion X2 Ultra:
      
        powernow-k8: Found 1 AMD Turion(tm)X2 Ultra DualCore Mobile ZM-82
                     processors (2 cpu cores) (version 2.20.00)
        powernow-k8:    0 : pstate 0 (2200 MHz)
        powernow-k8:    1 : pstate 1 (1100 MHz)
        powernow-k8:    2 : pstate 2 (600 MHz)
      
      But this is wrong as frequency for Pstate2 is 550 MHz. x86info reports it
      correctly:
      
        #x86info -a |grep Pstate
        ...
        Pstate-0: fid=e, did=0, vid=24 (2200MHz)
        Pstate-1: fid=e, did=1, vid=30 (1100MHz)
        Pstate-2: fid=e, did=2, vid=3c (550MHz) (current)
      
      Solution is to determine the frequency directly from Pstate MSRs instead
      of using rounded values from ACPI table.
      Signed-off-by: NAndreas Herrmann <andreas.herrmann3@amd.com>
      Signed-off-by: NThomas Renninger <trenn@suse.de>
      Signed-off-by: NDave Jones <davej@redhat.com>
      ca446d06
    • T
      [CPUFREQ] powernow-k8 cleanup msg if BIOS does not export ACPI _PSS cpufreq data · df182977
      Thomas Renninger 提交于
      - Make the message shorter and easier to grep for
      - Use printk_once instead of WARN_ONCE (functionality of these was mixed)
      Signed-off-by: NThomas Renninger <trenn@suse.de>
      Cc: Langsdorf, Mark <mark.langsdorf@amd.com>
      Signed-off-by: NDave Jones <davej@redhat.com>
      df182977
    • M
      [CPUFREQ] fix timer teardown in ondemand governor · b14893a6
      Mathieu Desnoyers 提交于
      * Rafael J. Wysocki (rjw@sisk.pl) wrote:
      > This message has been generated automatically as a part of a report
      > of regressions introduced between 2.6.28 and 2.6.29.
      >
      > The following bug entry is on the current list of known regressions
      > introduced between 2.6.28 and 2.6.29.  Please verify if it still should
      > be listed and let me know (either way).
      >
      >
      > Bug-Entry	: http://bugzilla.kernel.org/show_bug.cgi?id=13186
      > Subject		: cpufreq timer teardown problem
      > Submitter	: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
      > Date		: 2009-04-23 14:00 (24 days old)
      > References	: http://marc.info/?l=linux-kernel&m=124049523515036&w=4
      > Handled-By	: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
      > Patch		: http://patchwork.kernel.org/patch/19754/
      > 		  http://patchwork.kernel.org/patch/19753/
      >
      
      (updated changelog)
      
      cpufreq fix timer teardown in ondemand governor
      
      The problem is that dbs_timer_exit() uses cancel_delayed_work() when it should
      use cancel_delayed_work_sync(). cancel_delayed_work() does not wait for the
      workqueue handler to exit.
      
      The ondemand governor does not seem to be affected because the
      "if (!dbs_info->enable)" check at the beginning of the workqueue handler returns
      immediately without rescheduling the work. The conservative governor in
      2.6.30-rc has the same check as the ondemand governor, which makes things
      usually run smoothly. However, if the governor is quickly stopped and then
      started, this could lead to the following race :
      
      dbs_enable could be reenabled and multiple do_dbs_timer handlers would run.
      This is why a synchronized teardown is required.
      
      The following patch applies to, at least, 2.6.28.x, 2.6.29.1, 2.6.30-rc2.
      
      Depends on patch
      cpufreq: remove rwsem lock from CPUFREQ_GOV_STOP call
      Signed-off-by: NMathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
      CC: Andrew Morton <akpm@linux-foundation.org>
      CC: gregkh@suse.de
      CC: stable@kernel.org
      CC: cpufreq@vger.kernel.org
      CC: Ingo Molnar <mingo@elte.hu>
      CC: rjw@sisk.pl
      CC: Ben Slusky <sluskyb@paranoiacs.org>
      Signed-off-by: NDave Jones <davej@redhat.com>
      b14893a6
    • M
      [CPUFREQ] fix timer teardown in conservative governor · b253d2b2
      Mathieu Desnoyers 提交于
      * Rafael J. Wysocki (rjw@sisk.pl) wrote:
      > This message has been generated automatically as a part of a report
      > of regressions introduced between 2.6.28 and 2.6.29.
      >
      > The following bug entry is on the current list of known regressions
      > introduced between 2.6.28 and 2.6.29.  Please verify if it still should
      > be listed and let me know (either way).
      >
      >
      > Bug-Entry	: http://bugzilla.kernel.org/show_bug.cgi?id=13186
      > Subject		: cpufreq timer teardown problem
      > Submitter	: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
      > Date		: 2009-04-23 14:00 (24 days old)
      > References	: http://marc.info/?l=linux-kernel&m=124049523515036&w=4
      > Handled-By	: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
      > Patch		: http://patchwork.kernel.org/patch/19754/
      > 		  http://patchwork.kernel.org/patch/19753/
      >
      
      (re-send with updated changelog)
      
      cpufreq fix timer teardown in conservative governor
      
      The problem is that dbs_timer_exit() uses cancel_delayed_work() when it should
      use cancel_delayed_work_sync(). cancel_delayed_work() does not wait for the
      workqueue handler to exit.
      
      The ondemand governor does not seem to be affected because the
      "if (!dbs_info->enable)" check at the beginning of the workqueue handler returns
      immediately without rescheduling the work. The conservative governor in
      2.6.30-rc has the same check as the ondemand governor, which makes things
      usually run smoothly. However, if the governor is quickly stopped and then
      started, this could lead to the following race :
      
      dbs_enable could be reenabled and multiple do_dbs_timer handlers would run.
      This is why a synchronized teardown is required.
      
      Depends on patch
      cpufreq: remove rwsem lock from CPUFREQ_GOV_STOP call
      
      The following patch applies to 2.6.30-rc2. Stable kernels have a similar
      issue which should also be fixed, but the code changed between 2.6.29
      and 2.6.30, so this patch only applies to 2.6.30-rc.
      Signed-off-by: NMathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
      CC: Andrew Morton <akpm@linux-foundation.org>
      CC: gregkh@suse.de
      CC: stable@kernel.org
      CC: cpufreq@vger.kernel.org
      CC: Ingo Molnar <mingo@elte.hu>
      CC: rjw@sisk.pl
      CC: Ben Slusky <sluskyb@paranoiacs.org>
      Signed-off-by: NDave Jones <davej@redhat.com>
      b253d2b2
    • M
      [CPUFREQ] remove rwsem lock from CPUFREQ_GOV_STOP call · 42a06f21
      Mathieu Desnoyers 提交于
      * Rafael J. Wysocki (rjw@sisk.pl) wrote:
      > This message has been generated automatically as a part of a report
      > of regressions introduced between 2.6.28 and 2.6.29.
      >
      > The following bug entry is on the current list of known regressions
      > introduced between 2.6.28 and 2.6.29.  Please verify if it still should
      > be listed and let me know (either way).
      >
      >
      > Bug-Entry	: http://bugzilla.kernel.org/show_bug.cgi?id=13186
      > Subject		: cpufreq timer teardown problem
      > Submitter	: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
      > Date		: 2009-04-23 14:00 (24 days old)
      > References	: http://marc.info/?l=linux-kernel&m=124049523515036&w=4
      > Handled-By	: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
      > Patch		: http://patchwork.kernel.org/patch/19754/
      > 		  http://patchwork.kernel.org/patch/19753/
      
      The patches linked above depend on the following patch to remove
      circular locking dependency :
      
      cpufreq: remove rwsem lock from CPUFREQ_GOV_STOP call
      
      (the following issue was faced when using cancel_delayed_work_sync() in the
      timer teardown (which fixes a race).
      
      * KOSAKI Motohiro (kosaki.motohiro@jp.fujitsu.com) wrote:
      > Hi
      >
      > my box output following warnings.
      > it seems regression by commit 7ccc7608b836e58fbacf65ee4f8eefa288e86fac.
      >
      > A: work -> do_dbs_timer()  -> cpu_policy_rwsem
      > B: store() -> cpu_policy_rwsem -> cpufreq_governor_dbs() -> work
      >
      >
      
      Hrm, I think it must be due to my attempt to fix the timer teardown race
      in ondemand governor mixed with new locking behavior in 2.6.30-rc.
      
      The rwlock seems to be taken around the whole call to
      cpufreq_governor_dbs(), when it should be only taken around accesses to
      the locked data, and especially *not* around the call to
      dbs_timer_exit().
      
      Reverting my fix attempt would put the teardown race back in place
      (replacing the cancel_delayed_work_sync by cancel_delayed_work).
      Instead, a proper fix would imply modifying this critical section :
      
      cpufreq.c: __cpufreq_remove_dev()
      ...
              if (cpufreq_driver->target)
                      __cpufreq_governor(data, CPUFREQ_GOV_STOP);
      
              unlock_policy_rwsem_write(cpu);
      
      To make sure the __cpufreq_governor() callback is not called with rwsem
      held. This would allow execution of cancel_delayed_work_sync() without
      being nested within the rwsem.
      
      Applies on top of the 2.6.30-rc5 tree.
      
      Required to remove circular dep in teardown of both conservative and
      ondemande governors so they can use cancel_delayed_work_sync().
      CPUFREQ_GOV_STOP does not modify the policy, therefore this locking seemed
      unneeded.
      Signed-off-by: NMathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
      CC: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
      Cc: Greg KH <greg@kroah.com>
      CC: Ingo Molnar <mingo@elte.hu>
      CC: "Rafael J. Wysocki" <rjw@sisk.pl>
      CC: Ben Slusky <sluskyb@paranoiacs.org>
      CC: Chris Wright <chrisw@sous-sol.org>
      CC: Andrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NDave Jones <davej@redhat.com>
      42a06f21
    • D
      [CPUFREQ] powernow-k7 build fix when ACPI=n · d38e73e8
      Dave Jones 提交于
      arch/x86/kernel/cpu/cpufreq/powernow-k7.c:172: warning: 'invalidate_entry' defined but not used
      Reported-by: NToralf Förster <toralf.foerster@gmx.de>
      Signed-off-by: NDave Jones <davej@redhat.com>
      d38e73e8
    • J
      [CPUFREQ] add atom family to p4-clockmod · 43195037
      Jarod Wilson 提交于
      Some atom procs don't do freq scaling (such as the atom 330 on my own
      littlefalls2 board). By adding the atom family here, we at least get
      the benefit of passive cooling in a thermal emergency. Not sure how
      to see that its actually helping any, but the driver does bind and
      claim its functioning on my atom 330.
      Signed-off-by: NJarod Wilson <jarod@redhat.com>
      Signed-off-by: NDave Jones <davej@redhat.com>
      43195037
  3. 26 5月, 2009 16 次提交