]> git.karo-electronics.de Git - karo-tx-linux.git/log
karo-tx-linux.git
12 years agos390: gup_huge_pmd() support THP tail recounting
Andrea Arcangeli [Wed, 2 Nov 2011 20:37:25 +0000 (13:37 -0700)]
s390: gup_huge_pmd() support THP tail recounting

Up to this point the code assumed old refcounting for hugepages (pre-thp).
This updates the code directly to the thp mapcount tail page refcounting.

Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Hugh Dickins <hughd@google.com>
Cc: Johannes Weiner <jweiner@redhat.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Mel Gorman <mgorman@suse.de>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: David Gibson <david@gibson.dropbear.id.au>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: David Miller <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
12 years agopowerpc: gup_huge_pmd() return 0 if pte changes
Andrea Arcangeli [Wed, 2 Nov 2011 20:37:19 +0000 (13:37 -0700)]
powerpc: gup_huge_pmd() return 0 if pte changes

powerpc didn't return 0 in that case, if it's rolling back the *nr pointer
it should also return zero to avoid adding pages to the array at the wrong
offset.

Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Hugh Dickins <hughd@google.com>
Cc: Johannes Weiner <jweiner@redhat.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Mel Gorman <mgorman@suse.de>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: David Miller <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
12 years agopowerpc: gup_hugepte() support THP based tail recounting
Andrea Arcangeli [Wed, 2 Nov 2011 20:37:15 +0000 (13:37 -0700)]
powerpc: gup_hugepte() support THP based tail recounting

Up to this point the code assumed old refcounting for hugepages (pre-thp).
This updates the code directly to the thp mapcount tail page refcounting.

Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Hugh Dickins <hughd@google.com>
Cc: Johannes Weiner <jweiner@redhat.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Mel Gorman <mgorman@suse.de>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
12 years agopowerpc: gup_hugepte() avoid freeing the head page too many times
Andrea Arcangeli [Wed, 2 Nov 2011 20:37:11 +0000 (13:37 -0700)]
powerpc: gup_hugepte() avoid freeing the head page too many times

We only taken "refs" pins on the head page not "*nr" pins.

Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Hugh Dickins <hughd@google.com>
Cc: Johannes Weiner <jweiner@redhat.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Mel Gorman <mgorman@suse.de>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
12 years agopowerpc: get_hugepte() don't put_page() the wrong page
Andrea Arcangeli [Wed, 2 Nov 2011 20:37:08 +0000 (13:37 -0700)]
powerpc: get_hugepte() don't put_page() the wrong page

"page" may have changed to point to the next hugepage after the loop
completed, The references have been taken on the head page, so the
put_page must happen there too.

This is a longstanding issue pre-thp inclusion.

It's totally unclear how these page_cache_add_speculative and
pte_val(pte) != pte_val(*ptep) checks are necessary across all the
powerpc gup_fast code, when x86 doesn't need any of that: there's no way
the page can be freed with irq disabled so we're guaranteed the
atomic_inc will happen on a page with page_count > 0 (so not needing the
speculative check).

The pte check is also meaningless on x86: no need to rollback on x86 if
the pte changed, because the pte can still change a CPU tick after the
check succeeded and it won't be rolled back in that case.  The important
thing is we got a reference on a valid page that was mapped there a CPU
tick ago.  So not knowing the soft tlb refill code of ppc64 in great
detail I'm not removing the "speculative" page_count increase and the
pte checks across all the code, but unless there's a strong reason for
it they should be later cleaned up too.

If a pte can change from huge to non-huge (like it could happen with
THP) passing a pte_t *ptep to gup_hugepte() would also require to repeat
the is_hugepd in gup_hugepte(), but that shouldn't happen with hugetlbfs
only so I'm not altering that.

Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Hugh Dickins <hughd@google.com>
Cc: Johannes Weiner <jweiner@redhat.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Mel Gorman <mgorman@suse.de>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
12 years agopowerpc: remove superfluous PageTail checks on the pte gup_fast
Andrea Arcangeli [Wed, 2 Nov 2011 20:37:03 +0000 (13:37 -0700)]
powerpc: remove superfluous PageTail checks on the pte gup_fast

This part of gup_fast doesn't seem capable of handling hugetlbfs ptes,
those should be handled by gup_hugepd only, so these checks are
superfluous.

Plus if this wasn't a noop, it would have oopsed because, the insistence
of using the speculative refcounting would trigger a VM_BUG_ON if a tail
page was encountered in the page_cache_get_speculative().

Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Hugh Dickins <hughd@google.com>
Cc: Johannes Weiner <jweiner@redhat.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Mel Gorman <mgorman@suse.de>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
12 years agomm: thp: tail page refcounting fix
Andrea Arcangeli [Wed, 2 Nov 2011 20:36:59 +0000 (13:36 -0700)]
mm: thp: tail page refcounting fix

Michel while working on the working set estimation code, noticed that
calling get_page_unless_zero() on a random pfn_to_page(random_pfn)
wasn't safe, if the pfn ended up being a tail page of a transparent
hugepage under splitting by __split_huge_page_refcount().

He then found the problem could also theoretically materialize with
page_cache_get_speculative() during the speculative radix tree lookups
that uses get_page_unless_zero() in SMP if the radix tree page is freed
and reallocated and get_user_pages is called on it before
page_cache_get_speculative has a chance to call get_page_unless_zero().

So the best way to fix the problem is to keep page_tail->_count zero at
all times.  This will guarantee that get_page_unless_zero() can never
succeed on any tail page.  page_tail->_mapcount is guaranteed zero and
is unused for all tail pages of a compound page, so we can simply
account the tail page references there and transfer them to
tail_page->_count in __split_huge_page_refcount() (in addition to the
head_page->_mapcount).

While debugging this s/_count/_mapcount/ change I also noticed get_page is
called by direct-io.c on pages returned by get_user_pages.  That wasn't
entirely safe because the two atomic_inc in get_page weren't atomic.  As
opposed to other get_user_page users like secondary-MMU page fault to
establish the shadow pagetables would never call any superflous get_page
after get_user_page returns.  It's safer to make get_page universally safe
for tail pages and to use get_page_foll() within follow_page (inside
get_user_pages()).  get_page_foll() is safe to do the refcounting for tail
pages without taking any locks because it is run within PT lock protected
critical sections (PT lock for pte and page_table_lock for
pmd_trans_huge).

The standard get_page() as invoked by direct-io instead will now take
the compound_lock but still only for tail pages.  The direct-io paths
are usually I/O bound and the compound_lock is per THP so very
finegrined, so there's no risk of scalability issues with it.  A simple
direct-io benchmarks with all lockdep prove locking and spinlock
debugging infrastructure enabled shows identical performance and no
overhead.  So it's worth it.  Ideally direct-io should stop calling
get_page() on pages returned by get_user_pages().  The spinlock in
get_page() is already optimized away for no-THP builds but doing
get_page() on tail pages returned by GUP is generally a rare operation
and usually only run in I/O paths.

This new refcounting on page_tail->_mapcount in addition to avoiding new
RCU critical sections will also allow the working set estimation code to
work without any further complexity associated to the tail page
refcounting with THP.

Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
Reported-by: Michel Lespinasse <walken@google.com>
Reviewed-by: Michel Lespinasse <walken@google.com>
Reviewed-by: Minchan Kim <minchan.kim@gmail.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Hugh Dickins <hughd@google.com>
Cc: Johannes Weiner <jweiner@redhat.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Mel Gorman <mgorman@suse.de>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: David Gibson <david@gibson.dropbear.id.au>
Cc: <stable@kernel.org>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
12 years agoMerge git://github.com/rustyrussell/linux
Linus Torvalds [Wed, 2 Nov 2011 22:00:56 +0000 (15:00 -0700)]
Merge git://github.com/rustyrussell/linux

* git://github.com/rustyrussell/linux:
  virtio-blk: use ida to allocate disk index
  virtio: Add platform bus driver for memory mapped virtio device
  virtio: Dont add "config" to list for !per_vq_vector
  virtio: console: wait for first console port for early console output
  virtio: console: add port stats for bytes received, sent and discarded
  virtio: console: make discard_port_data() use get_inbuf()
  virtio: console: rename variable
  virtio: console: make get_inbuf() return port->inbuf if present
  virtio: console: Fix return type for get_inbuf()
  virtio: console: Use wait_event_freezable instead of _interruptible
  virtio: console: Ignore port name update request if name already set
  virtio: console: Fix indentation
  virtio: modify vring_init and vring_size to take account of the layout containing *_event_idx
  virtio.h: correct comment for struct virtio_driver
  virtio-net: Use virtio_config_val() for retrieving config
  virtio_config: Add virtio_config_val_len()
  virtio-console: Use virtio_config_val() for retrieving config

12 years agoMerge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/hch/vfs...
Linus Torvalds [Wed, 2 Nov 2011 18:41:01 +0000 (11:41 -0700)]
Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/hch/vfs-queue

* 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/hch/vfs-queue:
  vfs: add d_prune dentry operation
  vfs: protect i_nlink
  filesystems: add set_nlink()
  filesystems: add missing nlink wrappers
  logfs: remove unnecessary nlink setting
  ocfs2: remove unnecessary nlink setting
  jfs: remove unnecessary nlink setting
  hypfs: remove unnecessary nlink setting
  vfs: ignore error on forced remount
  readlinkat: ensure we return ENOENT for the empty pathname for normal lookups
  vfs: fix dentry leak in simple_fill_super()

12 years agoMerge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4
Linus Torvalds [Wed, 2 Nov 2011 17:06:20 +0000 (10:06 -0700)]
Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4

* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (97 commits)
  jbd2: Unify log messages in jbd2 code
  jbd/jbd2: validate sb->s_first in journal_get_superblock()
  ext4: let ext4_ext_rm_leaf work with EXT_DEBUG defined
  ext4: fix a syntax error in ext4_ext_insert_extent when debugging enabled
  ext4: fix a typo in struct ext4_allocation_context
  ext4: Don't normalize an falloc request if it can fit in 1 extent.
  ext4: remove comments about extent mount option in ext4_new_inode()
  ext4: let ext4_discard_partial_buffers handle unaligned range correctly
  ext4: return ENOMEM if find_or_create_pages fails
  ext4: move vars to local scope in ext4_discard_partial_page_buffers_no_lock()
  ext4: Create helper function for EXT4_IO_END_UNWRITTEN and i_aiodio_unwritten
  ext4: optimize locking for end_io extent conversion
  ext4: remove unnecessary call to waitqueue_active()
  ext4: Use correct locking for ext4_end_io_nolock()
  ext4: fix race in xattr block allocation path
  ext4: trace punch_hole correctly in ext4_ext_map_blocks
  ext4: clean up AGGRESSIVE_TEST code
  ext4: move variables to their scope
  ext4: fix quota accounting during migration
  ext4: migrate cleanup
  ...

12 years agoMerge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs
Linus Torvalds [Wed, 2 Nov 2011 17:05:22 +0000 (10:05 -0700)]
Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs

* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
  udf: Cleanup metadata flags handling
  udf: Skip mirror metadata FE loading when metadata FE is ok
  ext3: Allow quota file use root reservation
  udf: Remove web reference from UDF MAINTAINERS entry
  quota: Drop path reference on error exit from quotactl
  udf: Neaten udf_debug uses
  udf: Neaten logging output, use vsprintf extension %pV
  udf: Convert printks to pr_<level>
  udf: Rename udf_warning to udf_warn
  udf: Rename udf_error to udf_err
  udf: Promote some debugging messages to udf_error
  ext3: Remove the obsolete broken EXT3_IOC32_WAIT_FOR_READONLY.
  udf: Add readpages support for udf.
  ext3/balloc.c: local functions should be static
  ext2: fix the outdated comment in ext2_nfs_get_inode()
  ext3: remove deprecated oldalloc
  fs/ext3/balloc.c: delete useless initialization
  fs/ext2/balloc.c: delete useless initialization
  ext3: fix message in ext3_remount for rw-remount case
  ext3: Remove i_mutex from ext3_sync_file()

Fix up trivial (printf format cleanup) conflicts in fs/udf/udfdecl.h

12 years agoMerge branch 'for-linus' of git://github.com/richardweinberger/linux
Linus Torvalds [Wed, 2 Nov 2011 16:45:39 +0000 (09:45 -0700)]
Merge branch 'for-linus' of git://github.com/richardweinberger/linux

* 'for-linus' of git://github.com/richardweinberger/linux: (90 commits)
  um: fix ubd cow size
  um: Fix kmalloc argument order in um/vdso/vma.c
  um: switch to use of drivers/Kconfig
  UserModeLinux-HOWTO.txt: fix a typo
  UserModeLinux-HOWTO.txt: remove ^H characters
  um: we need sys/user.h only on i386
  um: merge delay_{32,64}.c
  um: distribute exports to where exported stuff is defined
  um: kill system-um.h
  um: generic ftrace.h will do...
  um: segment.h is x86-only and needed only there
  um: asm/pda.h is not needed anymore
  um: hw_irq.h can go generic as well
  um: switch to generic-y
  um: clean Kconfig up a bit
  um: a couple of missing dependencies...
  um: kill useless argument of free_chan() and free_one_chan()
  um: unify ptrace_user.h
  um: unify KSTK_...
  um: fix gcov build breakage
  ...

12 years agomfd: Fix missing abx500 header file updates
Linus Walleij [Sun, 30 Oct 2011 22:50:36 +0000 (23:50 +0100)]
mfd: Fix missing abx500 header file updates

I missed to include a patch adding the new silicon revision define
CUT3P3 and remove the retired CUT0 versions of AB8500. Also delete
the reference to the retired AB3550 from the header.

Reported-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agoum: fix ubd cow size
Richard Weinberger [Wed, 2 Nov 2011 12:17:27 +0000 (13:17 +0100)]
um: fix ubd cow size

ubd_file_size() cannot use ubd_dev->cow.file because at this time
ubd_dev->cow.file is not initialized.
Therefore, ubd_file_size() will always report a wrong disk size when
COW files are used.
Reading from /dev/ubd* would crash the kernel.

We have to read the correct disk size from the COW file's backing
file.

Signed-off-by: Richard Weinberger <richard@nod.at>
CC: stable@kernel.org
12 years agoum: Fix kmalloc argument order in um/vdso/vma.c
Dave Jones [Mon, 24 Oct 2011 22:15:32 +0000 (18:15 -0400)]
um: Fix kmalloc argument order in um/vdso/vma.c

kmalloc size is 1st arg, not second.

Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
Cc: <stable@kernel.org> # 3.0.x
[richard@nod.at: on 3.0 the to be patched file is
arch/um/sys-x86_64/vdso/vma.c]

12 years agoum: switch to use of drivers/Kconfig
Al Viro [Thu, 18 Aug 2011 19:11:59 +0000 (20:11 +0100)]
um: switch to use of drivers/Kconfig

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoUserModeLinux-HOWTO.txt: fix a typo
Jonathan Neuschäfer [Mon, 15 Aug 2011 13:34:10 +0000 (15:34 +0200)]
UserModeLinux-HOWTO.txt: fix a typo

Signed-off-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoUserModeLinux-HOWTO.txt: remove ^H characters
Jonathan Neuschäfer [Fri, 12 Aug 2011 00:28:23 +0000 (02:28 +0200)]
UserModeLinux-HOWTO.txt: remove ^H characters

If you can't read this patch, please run:

sed -i -e "s/[^\o10]\o10//g" \
Documentation/virtual/uml/UserModeLinux-HOWTO.txt

Signed-off-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: we need sys/user.h only on i386
Richard Weinberger [Thu, 18 Aug 2011 19:58:07 +0000 (21:58 +0200)]
um: we need sys/user.h only on i386

Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: merge delay_{32,64}.c
Richard Weinberger [Thu, 18 Aug 2011 19:55:11 +0000 (21:55 +0200)]
um: merge delay_{32,64}.c

Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: distribute exports to where exported stuff is defined
Al Viro [Thu, 18 Aug 2011 19:14:10 +0000 (20:14 +0100)]
um: distribute exports to where exported stuff is defined

ksyms.c is down to the stuff defined in various USER_OBJS

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: kill system-um.h
Al Viro [Thu, 18 Aug 2011 19:14:00 +0000 (20:14 +0100)]
um: kill system-um.h

most of it belonged in irqflags.h, actually

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: generic ftrace.h will do...
Al Viro [Thu, 18 Aug 2011 19:13:50 +0000 (20:13 +0100)]
um: generic ftrace.h will do...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: segment.h is x86-only and needed only there
Al Viro [Thu, 18 Aug 2011 19:13:40 +0000 (20:13 +0100)]
um: segment.h is x86-only and needed only there

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: asm/pda.h is not needed anymore
Al Viro [Thu, 18 Aug 2011 19:13:30 +0000 (20:13 +0100)]
um: asm/pda.h is not needed anymore

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: hw_irq.h can go generic as well
Al Viro [Thu, 18 Aug 2011 19:13:20 +0000 (20:13 +0100)]
um: hw_irq.h can go generic as well

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: switch to generic-y
Al Viro [Thu, 18 Aug 2011 19:13:10 +0000 (20:13 +0100)]
um: switch to generic-y

kill wrapper headers

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: clean Kconfig up a bit
Al Viro [Thu, 18 Aug 2011 19:13:00 +0000 (20:13 +0100)]
um: clean Kconfig up a bit

* kill duplicates with drivers/char/Kconfig
* take watchdog one into drivers/watchdog/Kconfig
* take mmapper to arch/um/Kconfig.um
* rename Kconfig.char menu to "UML Character Devices"

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: a couple of missing dependencies...
Al Viro [Thu, 18 Aug 2011 19:12:50 +0000 (20:12 +0100)]
um: a couple of missing dependencies...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: kill useless argument of free_chan() and free_one_chan()
Al Viro [Thu, 18 Aug 2011 19:12:39 +0000 (20:12 +0100)]
um: kill useless argument of free_chan() and free_one_chan()

delay_free_irq is always 0 for those...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: unify ptrace_user.h
Al Viro [Thu, 18 Aug 2011 19:12:19 +0000 (20:12 +0100)]
um: unify ptrace_user.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: unify KSTK_...
Al Viro [Thu, 18 Aug 2011 19:12:09 +0000 (20:12 +0100)]
um: unify KSTK_...

... and switch get_thread_register() to HOST_... for register numbers

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: fix gcov build breakage
Al Viro [Thu, 18 Aug 2011 19:11:49 +0000 (20:11 +0100)]
um: fix gcov build breakage

a) exports in gmon_syms.c duplicate kernel/gcov/* ones
b) excluding -pg in vdso compile is not enough - -fprofile-arcs
and -ftest-coverage also needs to be excluded

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: page_offset.h is never used
Al Viro [Thu, 18 Aug 2011 19:11:39 +0000 (20:11 +0100)]
um: page_offset.h is never used

... and neither is the only define in it

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: irq_vectors.h just shadows x86 one
Al Viro [Thu, 18 Aug 2011 19:11:29 +0000 (20:11 +0100)]
um: irq_vectors.h just shadows x86 one

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: required-features.h is there only to shadow x86 one...
Al Viro [Thu, 18 Aug 2011 19:11:19 +0000 (20:11 +0100)]
um: required-features.h is there only to shadow x86 one...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: asm/apic.h is there only to shadow the x86 one...
Al Viro [Thu, 18 Aug 2011 19:11:09 +0000 (20:11 +0100)]
um: asm/apic.h is there only to shadow the x86 one...

... so take it to arch/um/x86/asm.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: take ubd_user.h to its users...
Al Viro [Thu, 18 Aug 2011 19:10:59 +0000 (20:10 +0100)]
um: take ubd_user.h to its users...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: take ldt.h to arch/x86/um/asm/mm_context.h
Al Viro [Thu, 18 Aug 2011 19:10:49 +0000 (20:10 +0100)]
um: take ldt.h to arch/x86/um/asm/mm_context.h

it's x86-only and we have no business playing with it in asm/mmu.h; make
the latter have
struct uml_arch_mm_context arch;
instead of
struct uml_ldt ldt;
and let arch/<subarch>/um/asm/mm_context.h decide what'll be in there.
While we are at it, kill host_ldt.h - it's not needed in part of places
that include it (we want asm/ldt.h in those) and it can be trivially
expanded into the single remaining one.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: merge signal_{32,64}.c
Al Viro [Thu, 18 Aug 2011 19:10:39 +0000 (20:10 +0100)]
um: merge signal_{32,64}.c

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: no need to play with save_sp in signal frame setup anymore
Al Viro [Thu, 18 Aug 2011 19:10:29 +0000 (20:10 +0100)]
um: no need to play with save_sp in signal frame setup anymore

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: increase stack growth cushion in pagefault
Al Viro [Thu, 18 Aug 2011 19:10:19 +0000 (20:10 +0100)]
um: increase stack growth cushion in pagefault

analog of [PATCH] i386: let usermode execute the "enter" instruction from
circa 2006.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: merge HOST_... of registers common on i386 and amd64
Al Viro [Thu, 18 Aug 2011 19:10:09 +0000 (20:10 +0100)]
um: merge HOST_... of registers common on i386 and amd64

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: sanitize paths in sys_call_table* includes
Al Viro [Thu, 18 Aug 2011 19:09:59 +0000 (20:09 +0100)]
um: sanitize paths in sys_call_table* includes

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: merge os-Linux/tls.c into arch/x86/um/os-Linux/tls.c
Al Viro [Thu, 18 Aug 2011 19:09:49 +0000 (20:09 +0100)]
um: merge os-Linux/tls.c into arch/x86/um/os-Linux/tls.c

it's i386-specific; moreover, analogs on other targets have
incompatible interface - PTRACE_GET_THREAD_AREA does exist
elsewhere, but struct user_desc does *not*

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: move asm/desc.h into arch/x86/um/asm
Al Viro [Thu, 18 Aug 2011 19:09:39 +0000 (20:09 +0100)]
um: move asm/desc.h into arch/x86/um/asm

its only purpose is to shadow the x86 asm/desc.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: merge host_ldt_{32,64}.h
Al Viro [Thu, 18 Aug 2011 19:09:29 +0000 (20:09 +0100)]
um: merge host_ldt_{32,64}.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: merge tls_{32,64}.h
Al Viro [Thu, 18 Aug 2011 19:09:19 +0000 (20:09 +0100)]
um: merge tls_{32,64}.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: take um_mmu.h to asm/mmu.h, clean asm/mmu_context.h a bit
Al Viro [Thu, 18 Aug 2011 19:09:09 +0000 (20:09 +0100)]
um: take um_mmu.h to asm/mmu.h, clean asm/mmu_context.h a bit

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: kill useless include of user.h
Al Viro [Thu, 18 Aug 2011 19:08:59 +0000 (20:08 +0100)]
um: kill useless include of user.h

everything in USER_OBJ gets it via -include user.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: kill um_uaccess.h
Al Viro [Thu, 18 Aug 2011 19:08:49 +0000 (20:08 +0100)]
um: kill um_uaccess.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: take mconsole*.h to arch/um/drivers
Al Viro [Thu, 18 Aug 2011 19:08:39 +0000 (20:08 +0100)]
um: take mconsole*.h to arch/um/drivers

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: take chan_*.h and line.h to arch/um/drivers
Al Viro [Thu, 18 Aug 2011 19:08:29 +0000 (20:08 +0100)]
um: take chan_*.h and line.h to arch/um/drivers

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: take register_winch_irq() into the caller of is_skas_winch()
Al Viro [Thu, 18 Aug 2011 19:08:19 +0000 (20:08 +0100)]
um: take register_winch_irq() into the caller of is_skas_winch()

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: kill shared/mem_kern.h
Al Viro [Thu, 18 Aug 2011 19:08:09 +0000 (20:08 +0100)]
um: kill shared/mem_kern.h

... nothing declared there exists

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: kill shared/tlb.h
Al Viro [Thu, 18 Aug 2011 19:07:59 +0000 (20:07 +0100)]
um: kill shared/tlb.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: make flush_tlb_kernel_range_common() static
Al Viro [Thu, 18 Aug 2011 19:07:49 +0000 (20:07 +0100)]
um: make flush_tlb_kernel_range_common() static

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: kill shared/task.h and HOST_TASK_REGS
Al Viro [Thu, 18 Aug 2011 19:07:39 +0000 (20:07 +0100)]
um: kill shared/task.h and HOST_TASK_REGS

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: shared/syscall.h is not even included
Al Viro [Thu, 18 Aug 2011 19:07:29 +0000 (20:07 +0100)]
um: shared/syscall.h is not even included

... and functions declared in it do not exist

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: don't include kern.h unless it's needed
Al Viro [Thu, 18 Aug 2011 19:07:19 +0000 (20:07 +0100)]
um: don't include kern.h unless it's needed

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: trim kern.h
Al Viro [Thu, 18 Aug 2011 19:07:09 +0000 (20:07 +0100)]
um: trim kern.h

most of the functions in there are not used in anything that ends up
including that header...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: make load_initrd() static, kill shared/initrd.h
Al Viro [Thu, 18 Aug 2011 19:06:59 +0000 (20:06 +0100)]
um: make load_initrd() static, kill shared/initrd.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: bury unused macros around ptrace.h
Al Viro [Thu, 18 Aug 2011 19:06:49 +0000 (20:06 +0100)]
um: bury unused macros around ptrace.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: take arch/um/sys-x86 to arch/x86/um
Al Viro [Thu, 18 Aug 2011 19:06:39 +0000 (20:06 +0100)]
um: take arch/um/sys-x86 to arch/x86/um

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: merge Makefile-{i386,x86_64}
Al Viro [Thu, 18 Aug 2011 19:06:29 +0000 (20:06 +0100)]
um: merge Makefile-{i386,x86_64}

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: trim detritus from Makefile-i386
Al Viro [Thu, 18 Aug 2011 19:06:19 +0000 (20:06 +0100)]
um: trim detritus from Makefile-i386

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: arch_hweight.h is needed only on uml-x86
Al Viro [Thu, 18 Aug 2011 19:06:09 +0000 (20:06 +0100)]
um: arch_hweight.h is needed only on uml-x86

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: merge kernel_offsets_*.h
Al Viro [Thu, 18 Aug 2011 19:05:59 +0000 (20:05 +0100)]
um: merge kernel_offsets_*.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: merge skas_ptrace.h 32/64bit variants
Al Viro [Thu, 18 Aug 2011 19:05:49 +0000 (20:05 +0100)]
um: merge skas_ptrace.h 32/64bit variants

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: sysdep/barrier.h is not used for anything
Al Viro [Thu, 18 Aug 2011 19:05:39 +0000 (20:05 +0100)]
um: sysdep/barrier.h is not used for anything

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: shared/process.h is empty now; kill it
Al Viro [Thu, 18 Aug 2011 19:05:29 +0000 (20:05 +0100)]
um: shared/process.h is empty now; kill it

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: finish conversion to mcontext_t
Al Viro [Thu, 18 Aug 2011 19:05:19 +0000 (20:05 +0100)]
um: finish conversion to mcontext_t

now we don't mix host and guest signal frame layouts anymore; moreover,
we don't need host's struct sigcontext at all.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: start switching the references to host mcontext_t to its userland type
Al Viro [Thu, 18 Aug 2011 19:05:09 +0000 (20:05 +0100)]
um: start switching the references to host mcontext_t to its userland type

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: take userland definition of barrier() to user.h
Al Viro [Thu, 18 Aug 2011 19:04:59 +0000 (20:04 +0100)]
um: take userland definition of barrier() to user.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: take system.h out of shared/sysdep
Al Viro [Thu, 18 Aug 2011 19:04:49 +0000 (20:04 +0100)]
um: take system.h out of shared/sysdep

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: fill the handlers array at build time
Al Viro [Thu, 18 Aug 2011 19:04:39 +0000 (20:04 +0100)]
um: fill the handlers array at build time

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: simplify set_handler()
Al Viro [Thu, 18 Aug 2011 19:04:29 +0000 (20:04 +0100)]
um: simplify set_handler()

For one thing, we always block the same signals (IRQ ones - IO, WINCH, VTALRM),
so there's no need to pass sa_mask elements in arguments.  For another, the
flags depend only on whether it's an IRQ signal or not (we add SA_RESTART
for them).

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: don't bother blocking SIGARLM and SIGUSR1
Al Viro [Thu, 18 Aug 2011 19:04:19 +0000 (20:04 +0100)]
um: don't bother blocking SIGARLM and SIGUSR1

We used to generate those, but we hadn't done that for a long
time.  No need to bother blocking them for signal handlers.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: switch stub_segv_handler to SA_SIGINFO variant, get rid of magic crap in there
Al Viro [Thu, 18 Aug 2011 19:04:09 +0000 (20:04 +0100)]
um: switch stub_segv_handler to SA_SIGINFO variant, get rid of magic crap in there

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: kill includes of sysdep/sigcontext.h from stuff built with kernel headers
Al Viro [Thu, 18 Aug 2011 19:03:59 +0000 (20:03 +0100)]
um: kill includes of sysdep/sigcontext.h from stuff built with kernel headers

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: merge arch/um/os-Linux/sys-{i386,x86_64}
Al Viro [Thu, 18 Aug 2011 19:03:49 +0000 (20:03 +0100)]
um: merge arch/um/os-Linux/sys-{i386,x86_64}

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: merge hard_handler() instances, switch to use of SA_SIGINFO
Al Viro [Thu, 18 Aug 2011 19:03:39 +0000 (20:03 +0100)]
um: merge hard_handler() instances, switch to use of SA_SIGINFO

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: kill dead code around uaccess
Al Viro [Thu, 18 Aug 2011 19:03:29 +0000 (20:03 +0100)]
um: kill dead code around uaccess

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: merge arch/um/sys-{i386,x86_64}
Al Viro [Thu, 18 Aug 2011 19:03:19 +0000 (20:03 +0100)]
um: merge arch/um/sys-{i386,x86_64}

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: merge arch/um/sys-{i386,x86_64}/shared
Al Viro [Thu, 18 Aug 2011 19:03:09 +0000 (20:03 +0100)]
um: merge arch/um/sys-{i386,x86_64}/shared

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: merge arch/um/sys-{i386,x86_64}/asm
Al Viro [Thu, 18 Aug 2011 19:02:59 +0000 (20:02 +0100)]
um: merge arch/um/sys-{i386,x86_64}/asm

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: get rid of unused macros in ptrace_user.h
Al Viro [Thu, 18 Aug 2011 19:02:49 +0000 (20:02 +0100)]
um: get rid of unused macros in ptrace_user.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: get rid of sysdep/sc.h
Al Viro [Thu, 18 Aug 2011 19:02:39 +0000 (20:02 +0100)]
um: get rid of sysdep/sc.h

only sysdep/sigcontext.h uses it and very few definitions are
actually used.  The rest refers to symbols that don't even
exist anymore anyway.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: Get rid of UPT_SET/UPT_REG macros
Al Viro [Thu, 18 Aug 2011 19:02:29 +0000 (20:02 +0100)]
um: Get rid of UPT_SET/UPT_REG macros

the only users are arch getreg()/putreg() and it's easier to handle
it there instead of playing with macros from hell

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: take vm-flags.h to sys-*/asm
Al Viro [Thu, 18 Aug 2011 19:02:19 +0000 (20:02 +0100)]
um: take vm-flags.h to sys-*/asm

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: get rid of sysdep/checksum.h
Al Viro [Thu, 18 Aug 2011 19:02:09 +0000 (20:02 +0100)]
um: get rid of sysdep/checksum.h

Move those to sys-.../asm/checksum.h, kill include/asm/checksum.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: trim unused junk from user.h
Al Viro [Thu, 18 Aug 2011 19:01:59 +0000 (20:01 +0100)]
um: trim unused junk from user.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: get rid of kern_constants.h
Al Viro [Thu, 18 Aug 2011 19:01:49 +0000 (20:01 +0100)]
um: get rid of kern_constants.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: kill a couple of useless includes of kern_constants.h
Al Viro [Thu, 18 Aug 2011 19:01:39 +0000 (20:01 +0100)]
um: kill a couple of useless includes of kern_constants.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: -include user.h for USER_OBJ, trim includes
Al Viro [Thu, 18 Aug 2011 19:01:29 +0000 (20:01 +0100)]
um: -include user.h for USER_OBJ, trim includes

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: take user_constants.h to include/generated
Al Viro [Thu, 18 Aug 2011 19:01:19 +0000 (20:01 +0100)]
um: take user_constants.h to include/generated

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: kill skas_ptregs.h
Al Viro [Thu, 18 Aug 2011 19:01:09 +0000 (20:01 +0100)]
um: kill skas_ptregs.h

It's a plain include of user_constants.h and all (2) users are
including user_constants.h directly prior to that.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: switch to -idirafter, get saner kern_constants.h out of that
Al Viro [Thu, 18 Aug 2011 19:00:59 +0000 (20:00 +0100)]
um: switch to -idirafter, get saner kern_constants.h out of that

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: series of __get_user() is costly in sigframe handling
Al Viro [Thu, 18 Aug 2011 19:00:49 +0000 (20:00 +0100)]
um: series of __get_user() is costly in sigframe handling

It's not x86, where __get_user() is a single dereference; here it's
a single ptrace(2) call in host, which obviously costs a lot more.
IOW, it's cheaper to do copy_{to,from}_user() once than bother with
fields one by one...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>
12 years agoum: make copy_sc() static
Al Viro [Thu, 18 Aug 2011 19:00:39 +0000 (20:00 +0100)]
um: make copy_sc() static

... and kill it in amd64 - not used.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Richard Weinberger <richard@nod.at>