31 Oct, 2005

40 commits

  • This patch removes duplicate directory scanning code from fs/fat/dir.c. The
    two functions that share identical code are fat_readdirx() and
    fat_search_long(). This patch also renames fat_readdirx to __fat_readdir().

    Signed-off-by: Pekka Enberg
    Signed-off-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pekka Enberg
     
  • Now, vfat_rename() is using vfat_find() for sanity check. This removes that
    sanity check, the cost of sanity check is too high.

    Signed-off-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    OGAWA Hirofumi
     
  • Signed-off-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    OGAWA Hirofumi
     
  • I recently picked up my older work to remove unnecessary #includes of
    sched.h, starting from a patch by Dave Jones to not include sched.h
    from module.h. This reduces the number of indirect includes of sched.h
    by ~300. Another ~400 pointless direct includes can be removed after
    this disentangling (patch to follow later).
    However, quite a few indirect includes need to be fixed up for this.

    In order to feed the patches through -mm with as little disturbance as
    possible, I've split out the fixes I accumulated up to now (complete for
    i386 and x86_64, more archs to follow later) and post them before the real
    patch. This way this large part of the patch is kept simple with only
    adding #includes, and all hunks are independent of each other. So if any
    hunk rejects or gets in the way of other patches, just drop it. My scripts
    will pick it up again in the next round.

    Signed-off-by: Tim Schmielau
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tim Schmielau
     
  • Combine a bit of redundant code between force_sig_info() and
    force_sig_specific().

    Signed-off-by: paulmck@us.ibm.com
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Paul E. McKenney
     
  • This patch removes checks for ->si_code == SI_TIMER from send_signal,
    specific_send_sig_info, __group_send_sig_info.

    I think posix-timers.c used these functions some time ago, now it sends
    signals via send_{,group_}sigqueue, so these hooks are unneeded.

    Signed-off-by: Oleg Nesterov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Oleg Nesterov
     
  • This patch simplifies some checks for magic siginfo values. It should not
    change the behaviour in any way.

    Signed-off-by: Oleg Nesterov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Oleg Nesterov
     
  • This patch replaces hardcoded SEND_SIG_xxx constants with
    their symbolic names.

    No changes in affected .o files.

    Signed-off-by: Oleg Nesterov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Oleg Nesterov
     
  • - Use kzalloc() instead of kmalloc + memset.
    - Clean/fix some printk's.
    - Use NULL for pointers instead of 0.
    - Combine hpet busy searching locations into a function call.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • - Use HPET physical address to detect duplicates, not logical addresses.
    Using logical (mapped) addresses fails to detect duplicates
    because ioremap() returns a new mapped address each time.

    - iounmap() regions when duplicate/busy areas are found.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Allow the ACPI HPET description table to use a resource type of FIXED_MEM32
    for the HPET reource. Use the fixed resoure size of 1 KB for the HPET
    resource as per the HPET spec.

    Signed-off-by: Randy Dunlap
    Acked-by: Bob Picco
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • When booting, display the timer frequency in Hertz instead of as tick length
    in nanoseconds. Apart from saving a local variable, this makes the message
    more easily comprehensible.

    Signed-off-by: Clemens Ladisch
    Cc: Bob Picco
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • In the hpet_ioctl_common() function, devp->hd_hpets is already cached in the
    hpetp variable, so we can use just that.

    Signed-off-by: Clemens Ladisch
    Cc: Bob Picco
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • Fix two instances where a function would access the first HPET device instead
    of the current one.

    Signed-off-by: Clemens Ladisch
    Cc: Bob Picco
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • Clear the ht_opaque field in the hpet_register() function before searching for
    a free timer to prevent the function from incorrectly assuming that the search
    succeeded afterwards.

    Signed-off-by: Clemens Ladisch
    Cc: Bob Picco
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • Fix a division by zero that happened when the HPET_INFO ioctl was called
    before a timer frequency had been set.

    Signed-off-by: Clemens Ladisch
    Cc: Bob Picco
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • Fix a wrong memory access in hpet_ioctl_common(). It was not possible to use
    the HPET_INFO ioctl from kernel space because it always called copy_to_user().

    Signed-off-by: Clemens Ladisch
    Cc: Bob Picco
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • Reads from an HPET register require a round trip to the south bridge and are
    almost as slow as PCI reads. By caching the last value we've written to the
    comparator register, we can eliminate all HPET reads from the fast path in the
    emulated RTC interrupt handler.

    Signed-off-by: Clemens Ladisch
    Acked-by: Venkatesh Pallipadi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • Make sure that the RTC timer is in non-periodic mode; some stupid BIOS might
    have initialized it to periodic mode.

    Furthermore, don't set the SETVAL bit in the config register. This wouldn't
    have any effect unless the timer was in period mode (which it isn't), and then
    the actual timer frequency would be half that of the desired one because
    incrementing the comparator in the interrupt handler would be done after the
    hardware has already incremented it itself.

    Signed-off-by: Clemens Ladisch
    Acked-by: Venkatesh Pallipadi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • When the emulated RTC interrupt is no longer needed, we better disable it;
    otherwise, we get a spurious interrupt whenever the timer has rolled over and
    reaches the same comparator value.

    Having a superfluous interrupt every five minutes doesn't hurt much, but it's
    bad style anyway. ;-)

    Signed-off-by: Clemens Ladisch
    Acked-by: "Pallipadi, Venkatesh"
    Cc: Andi Kleen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • This patch adds support for shared HPET interrupts.

    The driver previously acknowledged interrupts for both edge and level
    interrupts, but didn't actually allow a shared interrupt in the latter case.

    We use a new per-timer flag to save whether the timer's interrupt might be
    shared, and use it to do the processing required for level interrupts only if
    necessary.

    Signed-off-by: Clemens Ladisch
    Acked-by: Bob Picco
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • It was only the RTC hardware that restricted interrupt frequencies to a power
    of two. There is no reason to take over this restriction into the HPET
    driver, so remove the offending check.

    Signed-off-by: Clemens Ladisch
    Acked-by: Bob Picco
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • This patch removes several reads of a timer's config register that serve no
    purpose whatsoever.

    Signed-off-by: Clemens Ladisch
    Acked-by: Bob Picco
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • The variable hpet_ntimer is never read, so remove it.

    Signed-off-by: Clemens Ladisch
    Acked-by: Bob Picco
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • On 32-bit architectures, the multiplication in the argument for
    hpet_time_div() often overflows. In the typical case of a 14.32 MHz timer,
    this happens when the desired frequency exceeds 61 Hz.

    To avoid this multiplication, we can precompute and store the hardware
    timer frequency, instead of the period, in the device structure, which
    leaves us with a simple division when computing the number of timer ticks.

    As a side effect, this also removes a theoretical bug where the timer
    interpolator's frequency would be computed as a 32-bit value even if the
    HPET frequency is greater than 2^32 Hz (the HPET spec allows up to 10 GHz).

    Signed-off-by: Clemens Ladisch
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • Disallow setting an interrupt frequency of zero (which would result in a
    division by zero), and disallow enabling the interrupt when the frequency
    hasn't yet been set (which would use an interrupt period of zero).

    Signed-off-by: Clemens Ladisch
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Clemens Ladisch
     
  • Convert most of the remaining "Using plain integer as NULL pointer" sparse
    warnings to use NULL. (Not duplicating patches that are already in -mm,
    -bird, or -kj.)

    Convert isdn driver struct initializer to use C99 syntax.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • - Various whitespace fixes

    - Use kzalloc()

    Acked-by: Kylene Hall
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • Move the Infineon TPM driver off pci device and makes it a pure pnp-driver.
    It includes pnp-port validation and region requesting.

    Signed-off-by: Marcel Selhorst
    Signed-off-by: Kylene Hall
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Marcel Selhorst
     
  • This patch changes the nsc driver from a pci driver to a platform driver.

    Signed-off-by: Kylene Hall
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kylene Jo Hall
     
  • This patch changes the atmel driver from a pci driver to a platform driver.

    Signed-off-by: Kylene Hall
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kylene Jo Hall
     
  • This patch is in support of moving away from the lpc bus pci_dev. The power
    management prototypes used by platform drivers is different but the
    functionality remains the same.

    Signed-off-by: Kylene Hall
    Signed-off-by: Linus Torvalds

    Kylene Jo Hall
     
  • Since the tpm does not have it's own pci id we have been consuming the lpc
    bus. This is not correct and causes problems to support non lpc bus chips.
    This patch removes the dependency on pci_dev from tpm.c The subsequent patches
    will stop the supported chips from registering as pci drivers.

    Signed-off-by: Kylene Hall
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kylene Jo Hall
     
  • This patch is in preparation of supporting chips that are not necessarily on
    the lpc bus and thus are not accessed with inb's and outb's. The patch
    replaces the call to get the chip's status in the tpm.c file with a vendor
    specific status function. The patch also defines the function for each of the
    current supported devices.

    Signed-off-by: Kylene Hall
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kylene Jo Hall
     
  • It's nasty to set random drivers to default m because people who just press
    enter on make oldconfig get these. Remove the default m

    Signed-off-by: Andi Kleen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andi Kleen
     
  • Simplify the UP (1 CPU) implementatin of set_cpus_allowed.

    The one CPU is hardcoded to be cpu 0 - so just test for that bit, and avoid
    having to pick up the cpu_online_map.

    Also, unexport cpu_online_map: it was only needed for set_cpus_allowed().

    Signed-off-by: Paul Jackson
    Acked-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Paul Jackson
     
  • I made a patch that detects if libintl.h (needed for nls) is present on the
    host system and if it's not, it nls support is disabled by providing
    dummies for the used nls functions.

    This way if there is nls support on the host system the *config targets
    will build according to Arnaldo Carvalho de Melo's i18n modifications, else
    it just uses the original English messages.

    I have also made a bug report at kernel's bugzilla:
    http://bugzilla.kernel.org/show_bug.cgi?id=5501
    And there is a discussion about this problem in Gentoo's bugzilla:
    http://bugs.gentoo.org/show_bug.cgi?id=99810

    Cc: Sam Ravnborg
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yuri Vasilevski
     
  • Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Horms
     
  • A couple of (char *) casts removed in a previous cleanup patch in
    lib/string.c:memmove() were actually useful, as they suppressed a couple of
    warnings:

    assignment discards qualifiers from pointer target type

    Fix by declaring the local variable const in the first place, so casts
    aren't needed to strip the const qualifier.

    Signed-off-by: Paul Jackson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Paul Jackson
     
  • From: Hareesh Nagarajan

    Signed-off-by: Hareesh Nagarajan
    Acked-by: Matt Mackall
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matt Mackall