24 Sep, 2009

2 commits

  • * remove asm/atomic.h inclusion from linux/utsname.h --
    not needed after kref conversion
    * remove linux/utsname.h inclusion from files which do not need it

    NOTE: it looks like fs/binfmt_elf.c do not need utsname.h, however
    due to some personality stuff it _is_ needed -- cowardly leave ELF-related
    headers and files alone.

    Signed-off-by: Alexey Dobriyan
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next: (30 commits)
    Use macros for .data.page_aligned section.
    Use macros for .bss.page_aligned section.
    Use new __init_task_data macro in arch init_task.c files.
    kbuild: Don't define ALIGN and ENTRY when preprocessing linker scripts.
    arm, cris, mips, sparc, powerpc, um, xtensa: fix build with bash 4.0
    kbuild: add static to prototypes
    kbuild: fail build if recordmcount.pl fails
    kbuild: set -fconserve-stack option for gcc 4.5
    kbuild: echo the record_mcount command
    gconfig: disable "typeahead find" search in treeviews
    kbuild: fix cc1 options check to ensure we do not use -fPIC when compiling
    checkincludes.pl: add option to remove duplicates in place
    markup_oops: use modinfo to avoid confusion with underscored module names
    checkincludes.pl: provide usage helper
    checkincludes.pl: close file as soon as we're done with it
    ctags: usability fix
    kernel hacking: move STRIP_ASM_SYMS from General
    gitignore usr/initramfs_data.cpio.bz2 and usr/initramfs_data.cpio.lzma
    kbuild: Check if linker supports the -X option
    kbuild: introduce ld-option
    ...

    Fix trivial conflict in scripts/basic/fixdep.c

    Linus Torvalds
     

22 Sep, 2009

1 commit

  • Convert m68k to use GENERIC_TIME via the arch_getoffset() infrastructure,
    reducing the amount of arch specific code we need to maintain.

    I've taken my best swing at converting this, but I'm not 100% confident
    I got it right. My cross-compiler is now out of date (gcc4.2) so I
    wasn't able to check if it compiled. Any assistance from arch
    maintainers or testers to get this merged would be great.

    Signed-off-by: John Stultz
    Cc: Geert Uytterhoeven
    Cc: Roman Zippel
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    john stultz
     

21 Sep, 2009

2 commits

  • Bye-bye Performance Counters, welcome Performance Events!

    In the past few months the perfcounters subsystem has grown out its
    initial role of counting hardware events, and has become (and is
    becoming) a much broader generic event enumeration, reporting, logging,
    monitoring, analysis facility.

    Naming its core object 'perf_counter' and naming the subsystem
    'perfcounters' has become more and more of a misnomer. With pending
    code like hw-breakpoints support the 'counter' name is less and
    less appropriate.

    All in one, we've decided to rename the subsystem to 'performance
    events' and to propagate this rename through all fields, variables
    and API names. (in an ABI compatible fashion)

    The word 'event' is also a bit shorter than 'counter' - which makes
    it slightly more convenient to write/handle as well.

    Thanks goes to Stephane Eranian who first observed this misnomer and
    suggested a rename.

    User-space tooling and ABI compatibility is not affected - this patch
    should be function-invariant. (Also, defconfigs were not touched to
    keep the size down.)

    This patch has been generated via the following script:

    FILES=$(find * -type f | grep -vE 'oprofile|[^K]config')

    sed -i \
    -e 's/PERF_EVENT_/PERF_RECORD_/g' \
    -e 's/PERF_COUNTER/PERF_EVENT/g' \
    -e 's/perf_counter/perf_event/g' \
    -e 's/nb_counters/nb_events/g' \
    -e 's/swcounter/swevent/g' \
    -e 's/tpcounter_event/tp_event/g' \
    $FILES

    for N in $(find . -name perf_counter.[ch]); do
    M=$(echo $N | sed 's/perf_counter/perf_event/g')
    mv $N $M
    done

    FILES=$(find . -name perf_event.*)

    sed -i \
    -e 's/COUNTER_MASK/REG_MASK/g' \
    -e 's/COUNTER/EVENT/g' \
    -e 's/\/event_id/g' \
    -e 's/counter/event/g' \
    -e 's/Counter/Event/g' \
    $FILES

    ... to keep it as correct as possible. This script can also be
    used by anyone who has pending perfcounters patches - it converts
    a Linux kernel tree over to the new naming. We tried to time this
    change to the point in time where the amount of pending patches
    is the smallest: the end of the merge window.

    Namespace clashes were fixed up in a preparatory patch - and some
    stylistic fallout will be fixed up in a subsequent patch.

    ( NOTE: 'counters' are still the proper terminology when we deal
    with hardware registers - and these sed scripts are a bit
    over-eager in renaming them. I've undone some of that, but
    in case there's something left where 'counter' would be
    better than 'event' we can undo that on an individual basis
    instead of touching an otherwise nicely automated patch. )

    Suggested-by: Stephane Eranian
    Acked-by: Peter Zijlstra
    Acked-by: Paul Mackerras
    Reviewed-by: Arjan van de Ven
    Cc: Mike Galbraith
    Cc: Arnaldo Carvalho de Melo
    Cc: Frederic Weisbecker
    Cc: Steven Rostedt
    Cc: Benjamin Herrenschmidt
    Cc: David Howells
    Cc: Kyle McMartin
    Cc: Martin Schwidefsky
    Cc: "David S. Miller"
    Cc: Thomas Gleixner
    Cc: "H. Peter Anvin"
    Cc:
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Ingo Molnar
     
  • Signed-off-by: Joe Perches
    Signed-off-by: Tim Abbott
    Acked-by: Paul Mundt
    Signed-off-by: Sam Ravnborg

    Joe Perches
     

16 Sep, 2009

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (46 commits)
    powerpc64: convert to dynamic percpu allocator
    sparc64: use embedding percpu first chunk allocator
    percpu: kill lpage first chunk allocator
    x86,percpu: use embedding for 64bit NUMA and page for 32bit NUMA
    percpu: update embedding first chunk allocator to handle sparse units
    percpu: use group information to allocate vmap areas sparsely
    vmalloc: implement pcpu_get_vm_areas()
    vmalloc: separate out insert_vmalloc_vm()
    percpu: add chunk->base_addr
    percpu: add pcpu_unit_offsets[]
    percpu: introduce pcpu_alloc_info and pcpu_group_info
    percpu: move pcpu_lpage_build_unit_map() and pcpul_lpage_dump_cfg() upward
    percpu: add @align to pcpu_fc_alloc_fn_t
    percpu: make @dyn_size mandatory for pcpu_setup_first_chunk()
    percpu: drop @static_size from first chunk allocators
    percpu: generalize first chunk allocator selection
    percpu: build first chunk allocators selectively
    percpu: rename 4k first chunk allocator to page
    percpu: improve boot messages
    percpu: fix pcpu_reclaim() locking
    ...

    Fix trivial conflict as by Tejun Heo in kernel/sched.c

    Linus Torvalds
     

01 Sep, 2009

3 commits

  • In order to be able to use asm-offsets.h in C files the
    existing namespace conflicts must be solved first. In
    asm-offsets.h there are defines for signal constants, so they
    can be used in assembler files.

    Unfortunately the existing defines use a 1:1 mapping for the
    macro names which results in name space conflicts if the header
    file would also be used in C files. So rename the created
    defines and add an "L" prefix to each one since that has
    already been done for the SIGTRAP define in entry_mm.

    Signed-off-by: Heiko Carstens
    Cc: Peter Zijlstra
    Cc: Arnd Bergmann
    Cc: Nick Piggin
    Cc: Martin Schwidefsky
    Cc: Horst Hartmann
    Cc: Christian Ehrhardt
    Cc: Andrew Morton
    Cc: Linus Torvalds
    Cc: David Miller
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Geert Uytterhoeven
    Cc: Roman Zippel
    Cc:
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Heiko Carstens
     
  • m68k has the thread_info structure embedded in its task struct.
    Therefore its not possible to implement current_thread_info()
    by looking at the stack pointer and do some simple calculations
    like most other architectures do it.

    To return the thread_info pointer for a task two defines are
    used. This works until the spinlock function bodies get moved
    into an own header file and CONFIG_SPINLOCK_DEBUG is turned on.
    That results into this compile error:

    In file included from include/linux/spinlock.h:378,
    from include/linux/seqlock.h:29,
    from include/linux/time.h:8,
    from include/linux/timex.h:56,
    from include/linux/sched.h:54,
    from arch/m68k/kernel/asm-offsets.c:12:
    include/linux/spinlock_api_smp.h: In function '__spin_unlock_irq':
    include/linux/spinlock_api_smp.h:371: error: 'current' undeclared (first use in this function)
    include/linux/spinlock_api_smp.h:371: error: (Each undeclared identifier is reported only once
    include/linux/spinlock_api_smp.h:371: error: for each function it appears in.)

    Including asm/current.h to asm-offsets.c wouldn't help since
    the definition of struct task is needed. So we end up with ugly
    header file include dependencies.

    To solve this calculate the offset of the thread_info structure
    into the task struct in asm-offsets.h and use the offset in
    task_thread_info(). This works just like it does for IA64 as
    well.

    Signed-off-by: Heiko Carstens
    Acked-by: Peter Zijlstra
    Cc: Arnd Bergmann
    Cc: Nick Piggin
    Cc: Martin Schwidefsky
    Cc: Horst Hartmann
    Cc: Christian Ehrhardt
    Cc: Andrew Morton
    Cc: Linus Torvalds
    Cc: David Miller
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Geert Uytterhoeven
    Cc: Roman Zippel
    Cc:
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Heiko Carstens
     
  • In order to be able to use asm-offsets.h in C files the
    existing namespace conflicts must be solved first. In
    asm-offsets.h e.g. PT_D0 gets defined which is the offset of
    the d0 member of the pt_regs structure. However a same define
    (with a different meaning) exists in asm/ptregs.h.

    So rename the defines created with the asm-offset mechanism to
    PT_OFF_D0 etc. There also already exist a few defines with
    these names that have the same meaning. So remove the existing
    defines and use the asm-offset generated ones.

    Signed-off-by: Heiko Carstens
    Acked-by: Peter Zijlstra
    Cc: Arnd Bergmann
    Cc: Nick Piggin
    Cc: Martin Schwidefsky
    Cc: Horst Hartmann
    Cc: Christian Ehrhardt
    Cc: Andrew Morton
    Cc: Linus Torvalds
    Cc: David Miller
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Geert Uytterhoeven
    Cc: Roman Zippel
    Cc:
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Heiko Carstens
     

27 Aug, 2009

1 commit


09 Jul, 2009

1 commit

  • Discarded sections in different archs share some commonality but have
    considerable differences. This led to linker script for each arch
    implementing its own /DISCARD/ definition, which makes maintaining
    tedious and adding new entries error-prone.

    This patch makes all linker scripts to move discard definitions to the
    end of the linker script and use the common DISCARDS macro. As ld
    uses the first matching section definition, archs can include default
    discarded sections by including them earlier in the linker script.

    ia64 is notable because it first throws away some ia64 specific
    subsections and then include the rest of the sections into the final
    image, so those sections must be discarded before the inclusion.

    defconfig compile tested for x86, x86-64, powerpc, powerpc64, ia64,
    alpha, sparc, sparc64 and s390. Michal Simek tested microblaze.

    Signed-off-by: Tejun Heo
    Acked-by: Paul Mundt
    Acked-by: Mike Frysinger
    Tested-by: Michal Simek
    Cc: linux-arch@vger.kernel.org
    Cc: Michal Simek
    Cc: microblaze-uclinux@itee.uq.edu.au
    Cc: Sam Ravnborg
    Cc: Tony Luck

    Tejun Heo
     

24 Jun, 2009

1 commit

  • x86 throws away .discard section but no other archs do. Also,
    .discard is not thrown away while linking modules. Make every arch
    and module linking throw it away. This will be used to define dummy
    variables for percpu declarations and definitions.

    This patch is based on Ivan Kokshaysky's alpha percpu patch.

    [ Impact: always throw away everything in .discard ]

    Signed-off-by: Tejun Heo
    Cc: Ivan Kokshaysky
    Cc: Richard Henderson
    Cc: Russell King
    Cc: Haavard Skinnemoen
    Cc: Bryan Wu
    Cc: Mikael Starvik
    Cc: Jesper Nilsson
    Cc: David Howells
    Cc: Yoshinori Sato
    Cc: Tony Luck
    Cc: Hirokazu Takata
    Cc: Geert Uytterhoeven
    Cc: Michal Simek
    Cc: Ralf Baechle
    Cc: Kyle McMartin
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Martin Schwidefsky
    Cc: Heiko Carstens
    Cc: Paul Mundt
    Cc: David S. Miller
    Cc: Jeff Dike
    Cc: Chris Zankel
    Cc: Rusty Russell
    Cc: Ingo Molnar

    Tejun Heo
     

19 Jun, 2009

1 commit


17 Jun, 2009

1 commit

  • * create mm/init-mm.c, move init_mm there
    * remove INIT_MM, initialize init_mm with C99 initializer
    * unexport init_mm on all arches:

    init_mm is already unexported on x86.

    One strange place is some OMAP driver (drivers/video/omap/) which
    won't build modular, but it's already wants get_vm_area() export.
    Somebody should look there.

    [akpm@linux-foundation.org: add missing #includes]
    Signed-off-by: Alexey Dobriyan
    Cc: Mike Frysinger
    Cc: Americo Wang
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     

12 Jun, 2009

1 commit


29 Apr, 2009

1 commit

  • Fix this:

    arch/m68k/kernel/sun3-head.S: Assembler messages:
    arch/m68k/kernel/sun3-head.S:32: Error: Unknown operator -- statement `__head' ignored

    Introduced by commit 6f335cab0431d5df4995bcd4fd952d4c746d5a86 ("m68k:
    convert to use __HEAD and HEAD_TEXT macros."), which started using
    __HEAD without adding the appropriate include.

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     

27 Apr, 2009

1 commit

  • This has the consequence of changing the section name use for head
    code from ".text.head" to ".head.text". Since this commit changes all
    users in the architecture, this change should be harmless.

    Signed-off-by: Tim Abbott
    Cc: Geert Uytterhoeven
    Cc: Roman Zippel
    Acked-by: Sam Ravnborg
    Signed-off-by: Linus Torvalds

    Tim Abbott
     

23 Apr, 2009

1 commit


04 Apr, 2009

1 commit


03 Apr, 2009

1 commit


02 Apr, 2009

1 commit

  • m68k has been a long time user of the generic RTC abstraction, so hook up
    rtc-generic:
    - Create the "rtc-generic" platform device if mach_hwclk is set,
    - Add checks for mach_hwclk, in anticipation of RTC chip drivers being moved
    to drivers/rtc/.

    Signed-off-by: Geert Uytterhoeven
    Acked-by: Alessandro Zummo
    Signed-off-by: Kyle McMartin

    Geert Uytterhoeven
     

14 Jan, 2009

1 commit


13 Jan, 2009

4 commits


06 Jan, 2009

1 commit


01 Jan, 2009

1 commit


16 Nov, 2008

1 commit

  • commit 69961c375288bdab7604e0bb1c8d22999bb8a347 ("[PATCH] m68k/Atari:
    Interrupt updates") added a BUG_ON() with an incorrect upper bound
    comparison, which causes an early crash on VME boards, where IRQ_USER is
    8, cnt is 192 and NR_IRQS is 200.

    Reported-by: Stephen N Chivers
    Tested-by: Kars de Jong
    Signed-off-by: Geert Uytterhoeven
    Cc: stable@kernel.org
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     

23 Oct, 2008

1 commit


15 Oct, 2008

7 commits

  • If CONFIG_PROC_FS is not set, I get:

    | arch/m68k/kernel/ints.c:433: error: redefinition of 'init_irq_proc'
    | include/linux/interrupt.h:438: error: previous definition of 'init_irq_proc' was here

    This was introduced by commit 6168a702ab0be181e5e57a0b2d0e7376f7a47f0b
    ("Declare init_irq_proc before we use it."), which replaced the #ifdef
    protection of the init_irq_proc() call by a static inline dummy if
    CONFIG_PROC_FS is not set.

    Make init_irq_proc() depend on CONFIG_PROC_FS to fix this.

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • This patch removes the no longer used m68k PCI code.

    Signed-off-by: Adrian Bunk
    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     
  • This patch removes the Hades support that was marked as BROKEN 5 years ago.

    Signed-off-by: Adrian Bunk
    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     
  • | include/linux/ssb/ssb.h: In function 'ssb_dma_sync_single_range_for_cpu':
    | include/linux/ssb/ssb.h:517: error: implicit declaration of function 'dma_sync_single_range_for_cpu'
    | include/linux/ssb/ssb.h: In function 'ssb_dma_sync_single_range_for_device':
    | include/linux/ssb/ssb.h:538: error: implicit declaration of function 'dma_sync_single_range_for_device'

    Add the missing dma_sync_single_range_for_{cpu,device}(), and remove the
    `inline' for the non-static function dma_sync_single_for_device().

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • Add .note.gnu.build-id to init data so it's discarded at boot.

    [Andreas Schwab] Use NOTES macro

    Signed-off-by: Roman Zippel
    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Linus Torvalds

    Roman Zippel
     
  • Put .bss at the end of the data section

    Signed-off-by: Roman Zippel
    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Linus Torvalds

    Roman Zippel
     
  • This changes the oops and backtrace code to use the new `%pS' printk()
    extension to print out symbols rather than manually calling print_symbol.

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     

12 Aug, 2008

1 commit

  • Wire up for m68k{,nommu} the system calls that were added in the last merge
    window:

    - 4006553b06306b34054529477b06b68a1c66249b ("flag parameters: inotify_init")
    - ed8cae8ba01348bfd83333f4648dd807b04d7f08 ("flag parameters: pipe")
    - 336dd1f70ff62d7dd8655228caed4c5bfc818c56 ("flag parameters: dup2")
    - a0998b50c3f0b8fdd265c63e0032f86ebe377dbf ("flag parameters: epoll_create")
    - 9fe5ad9c8cef9ad5873d8ee55d1cf00d9b607df0 ("flag parameters add-on: remove
    epoll_create size param")
    - b087498eb5605673b0f260a7620d91818cd72304 ("flag parameters: eventfd")
    - 9deb27baedb79759c3ab9435a7d8b841842d56e9 ("flag parameters: signalfd")

    Signed-off-by: Geert Uytterhoeven
    Acked-by: Greg Ungerer
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     

21 Jul, 2008

2 commits