linux/arch/sparc/kernel
Jeff Layton 91a27b2a75 vfs: define struct filename and have getname() return it
getname() is intended to copy pathname strings from userspace into a
kernel buffer. The result is just a string in kernel space. It would
however be quite helpful to be able to attach some ancillary info to
the string.

For instance, we could attach some audit-related info to reduce the
amount of audit-related processing needed. When auditing is enabled,
we could also call getname() on the string more than once and not
need to recopy it from userspace.

This patchset converts the getname()/putname() interfaces to return
a struct instead of a string. For now, the struct just tracks the
string in kernel space and the original userland pointer for it.

Later, we'll add other information to the struct as it becomes
convenient.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2012-10-12 20:14:55 -04:00
..
.gitignore
apc.c sparc: Add module.h to files previously implicitly using it. 2011-10-31 19:30:54 -04:00
asm-offsets.c
audit.c
auxio_32.c sparc32: Remove sun4 and sun4c from enum sparc_cpu. 2012-05-12 00:23:23 -07:00
auxio_64.c sparc64: Fix section mis-match errors. 2011-03-30 17:37:56 -07:00
btext.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
central.c sparc64: Do not clobber %g2 in xcall_fetch_glob_regs(). 2012-05-10 11:00:46 -07:00
cherrs.S
chmc.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
compat_audit.c
cpu.c sparc32: handle leon in cpu.c 2012-05-27 23:52:45 -07:00
cpumap.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
cpumap.h
devices.c sparc32: remove sun4c traps 2012-05-11 19:27:46 -07:00
dma.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
ds.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc 2012-04-13 13:32:07 -07:00
dtlb_miss.S
dtlb_prot.S
ebus.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
entry.h sparc64: Patch sun4v code sequences properly on module load. 2011-11-17 22:44:58 -08:00
entry.S sparc32: introduce support for run-time patching for all shared assembler code 2012-05-27 23:52:49 -07:00
etrap_32.S sparc32: introduce support for run-time patching for all shared assembler code 2012-05-27 23:52:49 -07:00
etrap_64.S Revert strace hiccups fix. 2012-10-05 20:39:04 -07:00
fpu_traps.S
ftrace.c
getsetcc.S
head_32.S sparc32: drop swapper_pg_dir 2012-07-26 16:46:15 -07:00
head_64.S sparc64: Niagara-4 bzero/memset, plus use MRU stores in page copy. 2012-10-05 13:45:26 -07:00
helpers.S
hvapi.c sparc: fix format string argument for prom_printf() 2012-10-02 23:20:34 -04:00
hvcalls.S sparc64: Add hypervisor interfaces for SPARC-T4 perf counter access. 2012-08-18 23:03:53 -07:00
hvtramp.S
idprom.c sparc: Clear out unused asm/machines.h values. 2012-05-11 20:45:18 -07:00
iommu.c SPARC: adapt for dma_map_ops changes 2012-03-28 16:36:34 +02:00
iommu_common.h
ioport.c sparc32: Export leon_dma_ops to modules. 2012-05-28 00:07:03 -07:00
irq.h sparc32: remove runtime btfix support 2012-05-14 14:05:09 -07:00
irq_32.c sparc32: handle leon in irq_32.c 2012-05-27 23:52:44 -07:00
irq_64.c sparc32: Trivial removal of sun4c references in comments. 2012-05-12 00:35:45 -07:00
itlb_miss.S
ivec.S
jump_label.c sparc: Fix even more fallout from system.h split. 2012-03-29 22:40:52 -07:00
kernel.h sparc32: introduce sparc32_start_kernel called from head_32.S 2012-05-27 23:52:42 -07:00
kgdb_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
kgdb_64.c sparc: Fix even more fallout from system.h split. 2012-03-29 22:40:52 -07:00
kprobes.c
kstack.h
ktlb.S sparc64: Support 2GB and 16GB page sizes for kernel linear mappings. 2012-09-06 18:13:58 -07:00
ldc.c sparc/ldc: remove IRQF_SAMPLE_RANDOM which is now a no-op 2012-07-19 10:40:30 -04:00
led.c
leon_kernel.c sparc32,leon: drop leon_init() 2012-07-26 16:46:16 -07:00
leon_pci.c PCI: Provide a default pcibios_update_irq() 2012-09-18 17:28:21 -06:00
leon_pci_grpci2.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
leon_pmc.c sparc32,leon: always include leon_pmc in build 2012-05-27 23:52:53 -07:00
leon_smp.c sparc32,leon: fix section mismatch warning 2012-05-27 23:52:48 -07:00
Makefile sparc32,leon: always include leon_pmc in build 2012-05-27 23:52:53 -07:00
mdesc.c sparc64: Probe cpu page size support more portably. 2012-09-06 19:01:25 -07:00
misctrap.S
module.c sparc: fix the return value of module_alloc() 2012-09-21 12:14:20 -07:00
nmi.c sparc64: Abstract away the %pcr values used to enable/disable NMI 2012-08-18 23:26:19 -07:00
of_device_32.c sparc32: rename sparc_irq_config to sparc_config 2012-04-15 10:28:49 -07:00
of_device_64.c devicetree: add helper inline for retrieving a node's full name 2012-07-06 07:16:34 -05:00
of_device_common.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
of_device_common.h
pci.c mm: kill vma flag VM_RESERVED and mm->reserved_vm counter 2012-10-09 16:22:19 +09:00
pci_common.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
pci_fire.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_impl.h sparc/PCI: register busn_res for root buses 2012-06-13 15:42:24 -06:00
pci_msi.c sparc: convert old cpumask API into new one 2011-05-16 13:38:07 -07:00
pci_psycho.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_sabre.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_schizo.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_sun4v.c arch/sparc/kernel/pci_sun4v.c: removes unnecessary semicolon 2012-09-21 12:08:56 -07:00
pci_sun4v.h
pci_sun4v_asm.S
pcic.c Merge branch 'pci/myron-pcibios_setup' into next 2012-07-05 15:31:05 -06:00
pcr.c sparc64: Add PCR ops for SPARC-T4. 2012-08-18 23:26:19 -07:00
perf_event.c sparc64: Update generic comments in perf event code to match reality. 2012-08-18 23:26:21 -07:00
pmc.c sparc: Add module.h to files previously implicitly using it. 2011-10-31 19:30:54 -04:00
power.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
process_32.c vfs: define struct filename and have getname() return it 2012-10-12 20:14:55 -04:00
process_64.c vfs: define struct filename and have getname() return it 2012-10-12 20:14:55 -04:00
prom.h
prom_32.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
prom_64.c sparc: fix format string argument for prom_printf() 2012-10-02 23:20:34 -04:00
prom_common.c sparc: fix sparc64 build due to leon.h inclusion 2012-05-29 12:47:38 -07:00
prom_irqtrans.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
psycho_common.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
psycho_common.h
ptrace_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
ptrace_64.c seccomp: ignore secure_computing return values 2012-04-18 12:24:50 +10:00
reboot.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
rtrap_32.S sparc32: introduce support for run-time patching for all shared assembler code 2012-05-27 23:52:49 -07:00
rtrap_64.S sparc64: Remove trap return code which is now unnecessary. 2012-04-13 13:56:46 -07:00
sbus.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
setup_32.c sparc32: centralize all mmu context handling in srmmu.c 2012-07-26 16:46:16 -07:00
setup_64.c sparc64: Add detection for features new in SPARC-T4. 2012-08-18 23:02:36 -07:00
signal32.c compat: move compat_siginfo_t definition to asm/compat.h 2012-10-06 03:05:16 +09:00
signal_32.c new helper: signal_delivered() 2012-06-01 12:58:52 -04:00
signal_64.c new helper: signal_delivered() 2012-06-01 12:58:52 -04:00
sigutil.h sparc: Allow handling signals when stack is corrupted. 2011-08-20 17:14:54 -07:00
sigutil_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
sigutil_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
smp_32.c Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-05-21 19:43:57 -07:00
smp_64.c SPARC: SMP: Remove call to ipi_call_lock_irq()/ipi_call_unlock_irq() 2012-06-05 17:27:13 +02:00
sparc_ksyms_32.c sparc32: Implement hard_smp_processor_id() via instruction patching. 2012-05-14 13:31:38 -07:00
sparc_ksyms_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
spiterrs.S
sstate.c sparc: Set reboot-cmd using reboot data hypervisor call if available. 2011-08-02 21:28:52 -07:00
stacktrace.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
starfire.c
sun4d_irq.c sparc32: remove remaining users of btfixup 2012-05-14 14:05:08 -07:00
sun4d_smp.c Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-05-21 19:43:57 -07:00
sun4m_irq.c sparc32: remove remaining users of btfixup 2012-05-14 14:05:08 -07:00
sun4m_smp.c Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-05-21 19:43:57 -07:00
sun4v_ivec.S
sun4v_tlb_miss.S sparc64: Support transparent huge pages. 2012-10-09 16:23:06 +09:00
sys32.S compat: fs: Generic compat_sys_sendfile implementation 2012-10-02 21:35:55 -04:00
sys_sparc32.c vfs: define struct filename and have getname() return it 2012-10-12 20:14:55 -04:00
sys_sparc_32.c sparc: kill ancient comment in sparc_sigaction() 2012-05-21 23:59:23 -04:00
sys_sparc_64.c sparc64: do not clobber personality flags in sys_sparc64_personality() 2012-08-02 00:26:50 -07:00
syscalls.S Revert strace hiccups fix. 2012-10-05 20:39:04 -07:00
sysfs.c cpu: convert 'cpu' and 'machinecheck' sysdev_class to a regular subsystem 2011-12-21 14:29:42 -08:00
systbls.h
systbls_32.S sparc: Hook up process_vm_{readv,writev} syscalls. 2011-11-01 00:51:30 -07:00
systbls_64.S KEYS: Use the compat keyctl() syscall wrapper on Sparc64 for Sparc32 compat 2012-05-11 10:56:56 +01:00
tadpole.c
time_32.c sparc32: remove runtime btfix support 2012-05-14 14:05:09 -07:00
time_64.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
trampoline_32.S sparc32,leon: always include leon_smp + leon_mm in build 2012-05-27 23:52:47 -07:00
trampoline_64.S
traps_32.c sparc32: Kill off software 32-bit multiply/divide routines. 2012-05-15 11:23:47 -07:00
traps_64.c Revert strace hiccups fix. 2012-10-05 20:39:04 -07:00
tsb.S sparc64: Support transparent huge pages. 2012-10-09 16:23:06 +09:00
ttable_32.S sparc32: move trap table to a separate file 2012-05-19 23:27:25 -07:00
ttable_64.S sparc64: renamed ttable.S to ttable_64.S 2012-05-19 23:26:41 -07:00
una_asm_32.S
una_asm_64.S sparc: Fix .size directive for do_int_load 2011-03-16 18:19:15 -07:00
unaligned_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
unaligned_64.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc 2012-04-13 13:32:07 -07:00
us2e_cpufreq.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
us3_cpufreq.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
utrap.S
vio.c Fix typo in printed messages 2012-06-24 11:03:52 -07:00
viohs.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
visemul.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
vmlinux.lds.S sparc32: add support for run-time patching of leon/sun single instructions 2012-05-27 23:52:43 -07:00
windows.c
winfixup.S
wof.S sparc32: introduce support for run-time patching for all shared assembler code 2012-05-27 23:52:49 -07:00
wuf.S sparc32: introduce support for run-time patching for all shared assembler code 2012-05-27 23:52:49 -07:00