21 Feb, 2011

1 commit


17 Feb, 2011

1 commit


16 Feb, 2011

2 commits

  • Request_region should be used with release_region, not release_resource.

    The local variable mem, storing the result of request_mem_region, is
    dropped and instead the pointer res is stored in the drvdata field of the
    platform device. This information is retrieved in omap_rng_remove to
    release the region. The drvdata field is not used elsewhere.

    The semantic match that finds this problem is as follows:
    (http://coccinelle.lip6.fr/)

    //
    @@
    expression x,E;
    @@
    (
    *x = request_region(...)
    |
    *x = request_mem_region(...)
    )
    ... when != release_region(x)
    when != x = E
    * release_resource(x);
    //

    Signed-off-by: Julia Lawall
    Signed-off-by: Herbert Xu

    Julia Lawall
     
  • Fix up previous patch that failed to properly fix mem leak in
    rfc4106_set_hash_subkey(). This add-on patch; fixes the leak. moves
    kfree() out of the error path, returns -ENOMEM rather than -EINVAL when
    ablkcipher_request_alloc() fails.

    Signed-off-by: Jesper Juhl
    Signed-off-by: Herbert Xu

    Jesper Juhl
     

29 Jan, 2011

5 commits

  • clk_get() returns a struct clk cookie to the driver and some platforms
    may return NULL if they only support a single clock. clk_get() has only
    failed if it returns a ERR_PTR() encoded pointer.

    Signed-off-by: Jamie Iles
    Reviewed-by: Aaro Koskinen
    Reviewed-by: Dmitry Kasatkin
    Signed-off-by: Herbert Xu

    Jamie Iles
     
  • clk_get() returns a struct clk cookie to the driver and some platforms
    may return NULL if they only support a single clock. clk_get() has only
    failed if it returns a ERR_PTR() encoded pointer.

    Signed-off-by: Jamie Iles
    Reviewed-and-tested-by: Tobias Karnat
    Signed-off-by: Herbert Xu

    Jamie Iles
     
  • A self-test failure in fips mode means a panic. Well, gcm(aes)
    self-tests currently fail in fips mode, as gcm is dependent on ghash,
    which semi-recently got self-test vectors added, but wasn't marked as a
    fips_allowed algorithm. Because of gcm's dependence on what is now seen
    as a non-fips_allowed algorithm, its self-tests refuse to run.
    Previously, ghash got a pass in fips mode, due to the lack of any test
    vectors at all, and thus gcm self-tests were able to run. After this
    patch, a 'modprobe tcrypt mode=35' no longer panics in fips mode, and
    successful self-test of gcm(aes) is reported.

    Signed-off-by: Jarod Wilson
    Signed-off-by: Herbert Xu

    Jarod Wilson
     
  • We (Red Hat) are intending to include dm-crypt functionality, using
    xts(aes) for disk encryption, as part of an upcoming FIPS-140-2
    certification effort, and xts(aes) *is* on the list of possible
    mode/cipher combinations that can be certified. To make that possible, we
    need to mark xts(aes) as fips_allowed in the crypto subsystem.

    A 'modprobe tcrypt mode=10' in fips mode shows xts(aes) self-tests
    passing successfully after this change.

    Signed-off-by: Jarod Wilson
    Signed-off-by: Herbert Xu

    Jarod Wilson
     
  • Signed-off-by: Davidlohr Bueso
    Acked-by: David S. Miller
    Signed-off-by: Herbert Xu

    Davidlohr Bueso
     

23 Jan, 2011

2 commits

  • This driver adds support for the True Random Number Generator in
    the Picochip PC3X3 and later devices.

    Signed-off-by: Jamie Iles
    Acked-by: Matt Mackall
    Signed-off-by: Herbert Xu

    Jamie Iles
     
  • There's a small memory leak in
    arch/x86/crypto/aesni-intel_glue.c::rfc4106_set_hash_subkey(). If the call
    to kmalloc() fails and returns NULL then the memory allocated previously
    by ablkcipher_request_alloc() is not freed when we leave the function.

    I could have just added a call to ablkcipher_request_free() before we
    return -ENOMEM, but that started to look too much like the code we
    already had at the end of the function, so I chose instead to rework the
    code a bit so that there are now a few labels at the end that we goto when
    various allocations fail, so we don't have to repeat the same blocks of
    code (this also reduces the object code size slightly).

    Signed-off-by: Jesper Juhl
    Signed-off-by: Herbert Xu

    Jesper Juhl
     

22 Jan, 2011

16 commits

  • Linus Torvalds
     
  • * 'media_fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (101 commits)
    [media] staging/lirc: fix mem leaks and ptr err usage
    [media] hdpvr: reduce latency of i2c read/write w/recycled buffer
    [media] hdpvr: enable IR part
    [media] rc/mceusb: timeout should be in ns, not us
    [media] v4l2-device: fix 'use-after-freed' oops
    [media] v4l2-dev: don't memset video_device.dev
    [media] zoran: use video_device_alloc instead of kmalloc
    [media] w9966: zero device state after a detach
    [media] v4l: Fix a use-before-set in the control framework
    [media] v4l: Include linux/videodev2.h in media/v4l2-ctrls.h
    [media] DocBook/v4l: update V4L2 revision and update copyright years
    [media] DocBook/v4l: fix validation error in dev-rds.xml
    [media] v4l2-ctrls: queryctrl shouldn't attempt to replace V4L2_CID_PRIVATE_BASE IDs
    [media] v4l2-ctrls: fix missing 'read-only' check
    [media] pvrusb2: Provide more information about IR units to lirc_zilog and ir-kbd-i2c
    [media] ir-kbd-i2c: Add back defaults setting for Zilog Z8's at addr 0x71
    [media] lirc_zilog: Update TODO.lirc_zilog
    [media] lirc_zilog: Add Andy Walls to copyright notice and authors list
    [media] lirc_zilog: Remove useless struct i2c_driver.command function
    [media] lirc_zilog: Remove unneeded tests for existence of the IR Tx function
    ...

    Linus Torvalds
     
  • Fix up comments in the key management code. No functional changes.

    Signed-off-by: David Howells
    Signed-off-by: Linus Torvalds

    David Howells
     
  • Do a bit of a style clean up in the key management code. No functional
    changes.

    Done using:

    perl -p -i -e 's!^/[*]*/\n!!' security/keys/*.c
    perl -p -i -e 's!} /[*] end [a-z0-9_]*[(][)] [*]/\n!}\n!' security/keys/*.c
    sed -i -s -e ": next" -e N -e 's/^\n[}]$/}/' -e t -e P -e 's/^.*\n//' -e "b next" security/keys/*.c

    To remove /*****/ lines, remove comments on the closing brace of a
    function to name the function and remove blank lines before the closing
    brace of a function.

    Signed-off-by: David Howells
    Signed-off-by: Linus Torvalds

    David Howells
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:
    cifs: fix up CIFSSMBEcho for unaligned access
    cifs: fix unaligned accesses in cifsConvertToUCS
    cifs: clean up unaligned accesses in cifs_unicode.c
    cifs: fix unaligned access in check2ndT2 and coalesce_t2
    cifs: clean up unaligned accesses in validate_t2
    cifs: use get/put_unaligned functions to access ByteCount
    cifs: move time field in cifsInodeInfo
    cifs: TCP_Server_Info diet
    CIFS: Implement cifs_strict_readv (try #4)
    CIFS: Implement cifs_file_strict_mmap (try #2)
    CIFS: Implement cifs_strict_fsync
    CIFS: Make cifsFileInfo_put work with strict cache mode

    Linus Torvalds
     
  • * 'fixes-2.6.38' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:
    x86,percpu: Move out of place 64 bit ops into X86_64 section

    Linus Torvalds
     
  • * 'fixes-2.6.38' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
    workqueue: note the nested NOT_RUNNING test in worker_clr_flags() isn't a noop
    workqueue: relax lockdep annotation on flush_work()

    Linus Torvalds
     
  • …l/git/tip/linux-2.6-tip

    * 'irq-cleanup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (37 commits)
    um: Use generic irq Kconfig
    tile: Use generic irq Kconfig
    sparc: Use generic irq Kconfig
    score: Use generic irq Kconfig
    powerpc: Use generic irq Kconfig
    parisc: Use generic irq Kconfig
    mn10300: Use generic irq Kconfig
    microblaze: Use generic irq Kconfig
    m68knommu: Use generic irq Kconfig
    ia64: Use generic irq Kconfig
    frv: Use generic irq Kconfig
    blackfin: Use generic irq Kconfig
    alpha: Use generic irq Kconfig
    genirq: Remove __do_IRQ
    m32r: Convert to generic irq Kconfig
    m32r: Convert usrv platform irq handling
    m32r: Convert opsput_lcdpld irq chip
    m32r: Convert opsput lanpld irq chip
    m32r: Convert opsput pld irq chip
    m32r: Convert opsput irq chip
    ...

    Linus Torvalds
     
  • * 'stable/bug-fixes-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:
    xen: p2m: correctly initialize partial p2m leaf
    xen: fix non-ANSI function warning in irq.c

    Linus Torvalds
     
  • …git/ieee1394/linux1394-2.6

    * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
    firewire: core: fix unstable I/O with Canon camcorder

    * 'fwnet' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
    firewire: net: is not experimental anymore
    firewire: net: invalidate ARP entries of removed nodes

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
    ALSA: hda - Fix EAPD to low on CZC P10T tablet computer with ALC662
    ALSA: HDA: Add SKU ignore for another Thinkpad Edge 14
    ALSA: hda - Fix "unused variable" compile warning
    ALSA: hda - Add quirk for HP Z-series workstation
    Revert "ALSA: HDA: Create mixers on ALC887"
    ASoC: PXA: Fix codec address on Zipit Z2
    ASoC: PXA: Fix jack detection on Zipit Z2
    ASoC: Blackfin: fix DAI/SPORT config dependency issues
    ASoC: Blackfin TDM: use external frame syncs
    ASoC: Blackfin AC97: fix build error after multi-component update
    ASoC: Blackfin TDM: fix missed snd_soc_dai_get_drvdata update
    ASoC: documentation updates
    ALSA: ice1712 delta - initialize SPI clock

    Linus Torvalds
     
  • * 'devicetree/merge' of git://git.secretlab.ca/git/linux-2.6:
    powerpc/83xx: fix build failures on dt compatible list.

    Linus Torvalds
     
  • * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (34 commits)
    powerpc/mpic: Fix mask/unmask timeout message
    powerpc/pseries: Add BNX2=m to defconfig
    powerpc: Enable 64kB pages and 1024 threads in pseries config
    powerpc: Disable mcount tracers in pseries defconfig
    powerpc/boot/dts: Install dts from the right directory
    powerpc: machine_check_generic is wrong on 64bit
    powerpc: Check RTAS extended log flag before checking length
    powerpc: Fix corruption when grabbing FWNMI data
    powerpc: Rework pseries machine check handler
    powerpc: Don't silently handle machine checks from userspace
    powerpc: Remove duplicate debugger hook in machine_check_exception
    powerpc: Never halt RTAS error logging after receiving an unrecoverable machine check
    powerpc: Don't force MSR_RI in machine_check_exception
    powerpc: Print 32 bits of DSISR in show_regs
    powerpc/kdump: Disable ftrace during kexec
    powerpc/kdump: Move crash_kexec_stop_spus to kdump crash handler
    powerpc/kexec: Remove empty ppc_md.machine_kexec_prepare
    powerpc/kexec: Don't initialise kexec hooks to default handlers
    powerpc/kdump: Remove ppc_md.machine_crash_shutdown
    powerpc/kexec: Remove ppc_md.machine_kexec
    ...

    Linus Torvalds
     
  • The patch "thp: export maybe_mkwrite" (commit 14fd403f2146) breaks
    systems without MMU.

    Error log:

    CC arch/microblaze/mm/init.o
    In file included from include/linux/mman.h:14,
    from arch/microblaze/mm/consistent.c:24:
    include/linux/mm.h: In function 'maybe_mkwrite':
    include/linux/mm.h:482: error: implicit declaration of function 'pte_mkwrite'
    include/linux/mm.h:482: error: incompatible types in assignment

    Signed-off-by: Michal Simek
    CC: Andrea Arcangeli
    Reviewed-by: Rik van Riel
    CC: Andrew Morton
    CC: Ingo Molnar
    Signed-off-by: Linus Torvalds

    Michal Simek
     
  • The cisco.com address will stop working soon, and besides no one can
    remember the second "d" in "rolandd" or how to spell "rdreier."

    Signed-off-by: Roland Dreier
    Signed-off-by: Linus Torvalds

    Roland Dreier
     
  • After changing the p2m mapping to a tree by

    commit 58e05027b530ff081ecea68e38de8d59db8f87e0
    xen: convert p2m to a 3 level tree

    and trying to boot a DomU with 615MB of memory, the following crash was
    observed in the dump:

    kernel direct mapping tables up to 26f00000 @ 1ec4000-1fff000
    BUG: unable to handle kernel NULL pointer dereference at (null)
    IP: [] xen_set_pte+0x27/0x60
    *pdpt = 0000000000000000 *pde = 0000000000000000

    Adding further debug statements showed that when trying to set up
    pfn=0x26700 the returned mapping was invalid.

    pfn=0x266ff calling set_pte(0xc1fe77f8, 0x6b3003)
    pfn=0x26700 calling set_pte(0xc1fe7800, 0x3)

    Although the last_pfn obtained from the startup info is 0x26700, which
    should in turn not be hit, the additional 8MB which are added as extra
    memory normally seem to be ok. This lead to looking into the initial
    p2m tree construction, which uses the smaller value and assuming that
    there is other code handling the extra memory.

    When the p2m tree is set up, the leaves are directly pointed to the
    array which the domain builder set up. But if the mapping is not on a
    boundary that fits into one p2m page, this will result in the last leaf
    being only partially valid. And as the invalid entries are not
    initialized in that case, things go badly wrong.

    I am trying to fix that by checking whether the current leaf is a
    complete map and if not, allocate a completely new page and copy only
    the valid pointers there. This may not be the most efficient or elegant
    solution, but at least it seems to allow me booting DomUs with memory
    assignments all over the range.

    BugLink: http://bugs.launchpad.net/bugs/686692
    [v2: Redid a bit of commit wording and fixed a compile warning]

    Signed-off-by: Stefan Bader
    Signed-off-by: Konrad Rzeszutek Wilk

    Stefan Bader
     

21 Jan, 2011

13 commits