Toralf Förster | 18 Apr 15:31 2015
Picon
Picon

UML specific or just a generic 4.0.x glitch : kernel/time/Kconfig:157:warning: range is invalid ?

tfoerste <at> t44 ~/devel/linux $ make ARCH=um linux -j3           
scripts/kconfig/conf  --silentoldconfig arch/x86/um/Kconfig
kernel/time/Kconfig:157:warning: range is invalid

--

-- 
Toralf
pgp key: 7B1A 07F4 EC82 0F90 D4C2  8936 872A E508 0076 E94E
--
"; the past is all dirty and cruel in the modern popular imagination, with the exception of the Romans, who
are just cruel"
Ian Mortimer, 2008, "The Time Traveller's Guide to Medieval England"

------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
Thomas Meyer | 3 Apr 16:51 2015
Picon

[PATCH v3] um: Print minimum physical memory requirement

Print a more sensible message about the minimum physical memory
requirement.

Signed-off-by: Thomas Meyer <thomas <at> m3y3r.de>
---
diff --git a/arch/um/kernel/physmem.c b/arch/um/kernel/physmem.c
index 549ecf3..6f20626 100644
--- a/arch/um/kernel/physmem.c
+++ b/arch/um/kernel/physmem.c
 <at>  <at>  -57,22 +57,51  <at>  <at>  void map_memory(unsigned long virt, unsigned long phys, unsigned long len,

 extern int __syscall_stub_start;

+/**
+ * setup_physmem() - Setup physical memory for UML
+ *  <at> start:	Start address of the physical kernel memory,
+ *		i.e start address of the executable image.
+ *  <at> reserve_end:	end address of the physical kernel memory.
+ *  <at> len:	Length of total physical memory that should be mapped/made
+ *		available, in bytes.
+ *  <at> highmem:	Number of highmem bytes that should be mapped/made available.
+ *
+ * Creates an unlinked temporary file of size (len + highmem) and memory maps
+ * it on the last executable image address (uml_reserved).
+ *
+ * The offset is needed as the length of the total physical memory
+ * (len + highmem) includes the size of the memory used be the executable image,
+ * but the mapped-to address is the last address of the executable image
+ * (uml_reserved == end address of executable image).
+ *
(Continue reading)

Thomas Meyer | 3 Apr 13:59 2015
Picon

[PATCH v2] um: Print minimum physical memory requirement

Print a more sensible message about the minimum physical memory
requirement.

Signed-off-by: Thomas Meyer <thomas <at> m3y3r.de>
---
diff --git a/arch/um/kernel/physmem.c b/arch/um/kernel/physmem.c
index 549ecf3..f7af5e6 100644
--- a/arch/um/kernel/physmem.c
+++ b/arch/um/kernel/physmem.c
 <at>  <at>  -61,18 +61,26  <at>  <at>  void __init setup_physmem(unsigned long start, unsigned long reserve_end,
 			  unsigned long len, unsigned long long highmem)
 {
 	unsigned long reserve = reserve_end - start;
-	int pfn = PFN_UP(__pa(reserve_end));
-	int delta = (len - reserve) >> PAGE_SHIFT;
-	int err, offset, bootmap_size;
+	unsigned long pfn = PFN_UP(__pa(reserve_end));
+	unsigned long delta = (len - reserve) >> PAGE_SHIFT;
+	unsigned long offset, bootmap_size;
+	int err, map_size;
+
+	offset = uml_reserved - uml_physmem;
+	map_size = len - offset;
+	if(map_size <= 0) {
+		printf("Too few physical memory! Needed=%d, given=%d\n",
+		       offset, len);
+		exit(1);
+	}

 	physmem_fd = create_mem_file(len + highmem);
(Continue reading)

madhusudan r | 30 Mar 10:11 2015
Picon

UML Interfaces

Hi,

I would like to know if the User Mode linux creates (and initialises) 'struct uml_net_private' for every interface device on it? To be specific, if there are multiple l2tpv3 tunnels on the UML, does it warrant the creation of as many 'dev's, and consequently associate it with a corresponding 'uml_net_private'?

Thanks,
Madhu
 
------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
Thomas Meyer | 28 Mar 10:49 2015
Picon

[PATCH] um: Print minimum physical memory requirement


Print a more sensible message about the minimum physical memory
requirement.

Signed-off-by: Thomas Meyer <thomas <at> m3y3r.de>
---
diff --git a/arch/um/kernel/physmem.c b/arch/um/kernel/physmem.c
index 549ecf3..a91cf05 100644
--- a/arch/um/kernel/physmem.c
+++ b/arch/um/kernel/physmem.c
 <at>  <at>  -63,16 +63,23  <at>  <at>  void __init setup_physmem(unsigned long start, unsigned long reserve_end,
 	unsigned long reserve = reserve_end - start;
 	int pfn = PFN_UP(__pa(reserve_end));
 	int delta = (len - reserve) >> PAGE_SHIFT;
-	int err, offset, bootmap_size;
+	int err, offset, bootmap_size, map_size;
+
+	offset = uml_reserved - uml_physmem;
+	map_size = len - offset;
+	if(map_size <= 0) {
+		printf("Too few physical memory! Needed=%d, given=%d\n",
+		       offset, len);
+		exit(1);
+	}

 	physmem_fd = create_mem_file(len + highmem);

-	offset = uml_reserved - uml_physmem;
 	err = os_map_memory((void *) uml_reserved, physmem_fd, offset,
-			    len - offset, 1, 1, 1);
+			    map_size, 1, 1, 1);
 	if (err < 0) {
 		printf("setup_physmem - mapping %ld bytes of memory at 0x%p "
-		       "failed - errno = %d\n", len - offset,
+		       "failed - errno = %d\n", map_size,
 		       (void *) uml_reserved, err);
 		exit(1);
 	}

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
Thomas Meyer | 28 Mar 10:07 2015
Picon

[PATCH v4 2/2] um: add a kmsg_dumper


Add a kmsg_dumper, that dumps the kmsg buffer to stdout, when no console
is available. This an enables the printing of early panic() calls
triggered in uml_postsetup().
When a panic() call happens so early in the UML kernel no
earlyprintk/console is available yet, but with a kmsg_dumper in place
the kernel message buffer will be outputted to the user, to give a
better hint, of what the failure was.

Signed-off-by: Thomas Meyer <thomas <at> m3y3r.de>
---
 arch/um/kernel/Makefile    |  2 +-
 arch/um/kernel/kmsg_dump.c | 43 +++++++++++++++++++++++++++++++++++++++++++
 arch/um/kernel/um_arch.c   |  2 ++
 3 files changed, 46 insertions(+), 1 deletion(-)
 create mode 100644 arch/um/kernel/kmsg_dump.c

diff --git a/arch/um/kernel/Makefile b/arch/um/kernel/Makefile
index 2d840a0..3345e71 100644
--- a/arch/um/kernel/Makefile
+++ b/arch/um/kernel/Makefile
 <at>  <at>  -13,7 +13,7  <at>  <at>  clean-files :=
 obj-y = config.o exec.o exitcode.o irq.o ksyms.o mem.o \
 	physmem.o process.o ptrace.o reboot.o sigio.o \
 	signal.o smp.o syscall.o sysrq.o time.o tlb.o trap.o \
-	um_arch.o umid.o maccess.o skas/
+	um_arch.o umid.o maccess.o kmsg_dump.o skas/

 obj-$(CONFIG_BLK_DEV_INITRD) += initrd.o
 obj-$(CONFIG_GPROF)	+= gprof_syms.o
diff --git a/arch/um/kernel/kmsg_dump.c b/arch/um/kernel/kmsg_dump.c
new file mode 100644
index 0000000..407d492
--- /dev/null
+++ b/arch/um/kernel/kmsg_dump.c
 <at>  <at>  -0,0 +1,43  <at>  <at> 
+#include <linux/kmsg_dump.h>
+#include <linux/console.h>
+#include <shared/init.h>
+#include <shared/kern.h>
+#include <os.h>
+
+static void kmsg_dumper_stdout(struct kmsg_dumper *dumper,
+				enum kmsg_dump_reason reason)
+{
+	static char line[1024];
+
+	size_t len = 0;
+	bool con_available = false;
+
+	/* only dump kmsg when no console is available */
+	if (!console_trylock())
+		return;
+
+	if (console_drivers != NULL)
+		con_available = true;
+
+	console_unlock();
+
+	if (con_available == true)
+		return;
+
+	printf("kmsg_dump:\n");
+	while (kmsg_dump_get_line(dumper, true, line, sizeof(line), &len)) {
+		line[len] = '\0';
+		printf("%s", line);
+	}
+}
+
+static struct kmsg_dumper kmsg_dumper = {
+	.dump = kmsg_dumper_stdout
+};
+
+int __init kmsg_dumper_stdout_init(void)
+{
+	return kmsg_dump_register(&kmsg_dumper);
+}
+
+__uml_postsetup(kmsg_dumper_stdout_init);
diff --git a/arch/um/kernel/um_arch.c b/arch/um/kernel/um_arch.c
index ea92aa1..f1efeee 100644
--- a/arch/um/kernel/um_arch.c
+++ b/arch/um/kernel/um_arch.c
 <at>  <at>  -11,6 +11,7  <at>  <at> 
 #include <linux/string.h>
 #include <linux/utsname.h>
 #include <linux/sched.h>
+#include <linux/kmsg_dump.h>
 #include <asm/pgtable.h>
 #include <asm/processor.h>
 #include <asm/sections.h>
 <at>  <at>  -234,6 +235,7  <at>  <at>  static void __init uml_postsetup(void)
 static int panic_exit(struct notifier_block *self, unsigned long unused1,
 		      void *unused2)
 {
+	kmsg_dump(KMSG_DUMP_PANIC);
 	bust_spinlocks(1);
 	bust_spinlocks(0);
 	uml_exitcode = 1;
--

-- 
2.1.0

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
Thomas Meyer | 28 Mar 09:59 2015
Picon

[PATCH v4 1/2] um: Move uml_postsetup in the init_thread stack


atomic_notifier_chain_register() and uml_postsetup() do call kernel code
that rely on the "current" kernel macro and a valid task_struct resp.
thread_info struct. Give those functions a valid stack by moving
uml_postsetup() in the init_thread stack. This moves enables a panic()
call in this early code to generate a valid stacktrace, instead of
crashing.
E.g. when an UML kernel is started with an initrd but too few physical
memory the panic() call get's actually processed.

Signed-off-by: Thomas Meyer <thomas <at> m3y3r.de>
---
 arch/um/include/shared/as-layout.h |  1 +
 arch/um/kernel/um_arch.c           | 15 ++++++++++-----
 arch/um/os-Linux/skas/process.c    |  2 +-
 3 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/arch/um/include/shared/as-layout.h b/arch/um/include/shared/as-layout.h
index 41c8c77..ca1843e 100644
--- a/arch/um/include/shared/as-layout.h
+++ b/arch/um/include/shared/as-layout.h
 <at>  <at>  -56,6 +56,7  <at>  <at>  extern unsigned long brk_start;
 extern unsigned long host_task_size;

 extern int linux_main(int argc, char **argv);
+extern void uml_finishsetup(void);

 struct siginfo;
 extern void (*sig_info[])(int, struct siginfo *si, struct uml_pt_regs *);
diff --git a/arch/um/kernel/um_arch.c b/arch/um/kernel/um_arch.c
index 9274eae..ea92aa1 100644
--- a/arch/um/kernel/um_arch.c
+++ b/arch/um/kernel/um_arch.c
 <at>  <at>  -247,6 +247,16  <at>  <at>  static struct notifier_block panic_exit_notifier = {
 	.priority 		= 0
 };

+void uml_finishsetup(void)
+{
+	atomic_notifier_chain_register(&panic_notifier_list,
+				       &panic_exit_notifier);
+
+	uml_postsetup();
+
+	new_thread_handler();
+}
+
 /* Set during early boot */
 unsigned long task_size;
 EXPORT_SYMBOL(task_size);
 <at>  <at>  -362,11 +372,6  <at>  <at>  int __init linux_main(int argc, char **argv)
 		printf("Kernel virtual memory size shrunk to %lu bytes\n",
 		       virtmem_size);

-	atomic_notifier_chain_register(&panic_notifier_list,
-				       &panic_exit_notifier);
-
-	uml_postsetup();
-
 	stack_protections((unsigned long) &init_thread_info);
 	os_flush_stdout();

diff --git a/arch/um/os-Linux/skas/process.c b/arch/um/os-Linux/skas/process.c
index 908579f..8666cb6 100644
--- a/arch/um/os-Linux/skas/process.c
+++ b/arch/um/os-Linux/skas/process.c
 <at>  <at>  -674,7 +674,7  <at>  <at>  int start_idle_thread(void *stack, jmp_buf *switch_buf)
 	n = setjmp(initial_jmpbuf);
 	switch (n) {
 	case INIT_JMP_NEW_THREAD:
-		(*switch_buf)[0].JB_IP = (unsigned long) new_thread_handler;
+		(*switch_buf)[0].JB_IP = (unsigned long) uml_finishsetup;
 		(*switch_buf)[0].JB_SP = (unsigned long) stack +
 			UM_THREAD_SIZE - sizeof(void *);
 		break;
--

-- 
2.1.0

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
Richard Weinberger | 16 Mar 12:41 2015
Picon

Hostfs updates

Host got a visit from the janitor.

[PATCH 01/15] hostfs: hostfs_file_open: Switch to data locking model
[PATCH 02/15] hostfs: hostfs_file_open: Fix a fd leak in
[PATCH 03/15] hostfs: Allow fsync on directories
[PATCH 04/15] hostfs: Handle bogus st.mode
[PATCH 05/15] hostfs: Make hostfs_readpage more readable
[PATCH 06/15] hostfs: Add a BUG_ON to detect behavior changes of
[PATCH 07/15] hostfs: Remove open coded strcpy()
[PATCH 08/15] hostfs: Use __getname() in follow_link
[PATCH 09/15] hostfs: Report append flag in ->show_options()
[PATCH 10/15] hostfs: Remove superfluous test in hostfs_open()
[PATCH 11/15] hostfs: hostfs_open: Reset open flags upon each retry
[PATCH 12/15] hostfs: Remove superfluous initializations in
[PATCH 13/15] hostfs: Set page flags in hostfs_readpage() correctly
[PATCH 14/15] hostfs: Use page_offset()
[PATCH 15/15] hostfs: No need to box and later unbox the file mode

Thanks,
//richard

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
Toralf Förster | 10 Mar 15:39 2015
Picon
Picon

compile error after : make ARCH=um allmodconfig && make ARCH=um linux

Hi,

is this already known ? :

  CC      arch/um/drivers/vde_kern.o
  CC      arch/um/drivers/vde_user.o
arch/um/drivers/vde_user.c:8:24: fatal error: libvdeplug.h: No such file or directory
 #include <libvdeplug.h>
                        ^
compilation terminated.
scripts/Makefile.build:258: recipe for target 'arch/um/drivers/vde_user.o' failed
make[1]: *** [arch/um/drivers/vde_user.o] Error 1
Makefile:947: recipe for target 'arch/um/drivers' failed
make: *** [arch/um/drivers] Error 2

--

-- 
Toralf
pgp key: 7B1A 07F4 EC82 0F90 D4C2  8936 872A E508 0076 E94E

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
Toralf Förster | 8 Mar 22:13 2015
Picon
Picon

starting an 32 bit x86 chroot uml image at a ahrdened Gentoo amd64 system fails

Well, in fact, since I switched from x86 to amd64 under Gentoo, I never managed to get that chroot to be booted.
During boot of the UML guest it just hangs around  "devtmpfs: mounted" w/o any output

Today I decided to try  defconfig, and now I do get at least an output. Any hints how to continue ? :

tfoerste <at> t44 ~/devel/linux $ start_uml.sh -r trinity                   
+ STTRACE=
+ /home/tfoerste/devel/linux/linux earlyprintk ubda=/home/tfoerste/virtual/uml/trinity
ubdb=/mnt/ramdisk/trinity_swap eth0=tuntap,tap0,72:ef:3d:9f:c3:5a mem=1000M con0=fd:0,fd:1
con=pts umid=uml_trinity rootfstype=ext4 softlockup_all_cpu_backtrace=1
Core dump limits :
        soft - 0
        hard - NONE
Checking that ptrace can change system call numbers...OK
Checking syscall emulation patch for ptrace...OK
Checking advanced syscall emulation patch for ptrace...OK
Checking environment variables for a tempdir...none found
Checking if /dev/shm is on tmpfs...OK
Checking PROT_EXEC mmap in /dev/shm...OK
Checking for the skas3 patch in the host:
  - /proc/mm...not found: No such file or directory
  - PTRACE_FAULTINFO...not found
  - PTRACE_LDT...not found
UML running in SKAS0 mode
bootconsole [earlycon0] enabled
PID hash table entries: 4096 (order: 3, 32768 bytes)
Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes)
Inode-cache hash table entries: 65536 (order: 7, 524288 bytes)
Memory: 1001892K/1024000K available (2481K kernel code, 619K rwdata, 772K rodata, 112K init, 156K bss,
22108K reserved, 0K cma-reserved)
NR_IRQS:15
Calibrating delay loop... 5599.23 BogoMIPS (lpj=27996160)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 2048 (order: 2, 16384 bytes)
Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes)
Initializing cgroup subsys blkio
Initializing cgroup subsys devices
Initializing cgroup subsys freezer
Checking that host ptys support output SIGIO...Yes
Checking that host ptys support SIGIO on close...No, enabling workaround
devtmpfs: initialized
Using 2.6 host AIO
NET: Registered protocol family 16
Switched to clocksource itimer
NET: Registered protocol family 2
TCP established hash table entries: 8192 (order: 4, 65536 bytes)
TCP bind hash table entries: 8192 (order: 4, 65536 bytes)
TCP: Hash tables configured (established 8192 bind 8192)
TCP: reno registered
UDP hash table entries: 512 (order: 2, 16384 bytes)
UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
NET: Registered protocol family 1
console [stderr0] disabled
mconsole (version 2) initialized on /home/tfoerste/.uml/uml_trinity/mconsole
Checking host MADV_REMOVE support...OK
futex hash table entries: 256 (order: 0, 6144 bytes)
VFS: Disk quotas dquot_6.5.2
VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
io scheduler noop registered
io scheduler deadline registered (default)
TCP: cubic registered
NET: Registered protocol family 17
Initialized stdio console driver
Console initialized on /dev/tty0
                                console [tty0] enabled
console [tty0] enabled
                      bootconsole [earlycon0] disabled
bootconsole [earlycon0] disabled
                                Initializing software serial port version 1
console [mc-1] enabled
Netdevice 0 (72:ef:3d:9f:c3:5a) : 
TUN/TAP backend - 
winch_thread : TIOCSCTTY failed on fd 1 err = 1
EXT4-fs (ubda): mounted filesystem with ordered data mode. Opts: (null)
VFS: Mounted root (ext4 filesystem) readonly on device 98:0.
devtmpfs: mounted

Modules linked in:
Pid: 1, comm: swapper Not tainted 4.0.0-rc2-00424-g1711fd9
RIP: 0033:[<0000000060250abe>]
RSP: 0000037066baff08  EFLAGS: 00010202
RAX: 0000000060250aac RBX: 00000000606069a8 RCX: 00000370664d7b99
RDX: 0000000060235550 RSI: 0000037066bb0fe8 RDI: 000000009e5b1000
RBP: 0000037066bb0fe8 R08: 0000000000000000 R09: 0000000000000000
R10: 000000009e019778 R11: 0000000000000246 R12: 000000009e5b1000
R13: 0000037066bb0000 R14: 0000000060235a60 R15: 00000000602d95a8
Kernel panic - not syncing: Segfault with no mm
CPU: 0 PID: 1 Comm: swapper Not tainted 4.0.0-rc2-00424-g1711fd9 #1
Stack:

Modules linked in:
Pid: 1, comm: swapper Not tainted 4.0.0-rc2-00424-g1711fd9
RIP: 0033:[<00000000602388b1>]
RSP: 0000000060573450  EFLAGS: 00010202
RAX: 0000000000000006 RBX: 000000006049c25e RCX: 00000000606069a8
RDX: 0000000000000000 RSI: 0000000060615338 RDI: 0000000000000000
RBP: 0000000060573480 R08: 0000000060573059 R09: 000000006027e906
R10: 0000000000000008 R11: 00000000003b91b9 R12: 0000037066baff0f
R13: 0000000000000001 R14: 00000000605736f0 R15: 0000000000000001
Kernel panic - not syncing: Segfault with no mm
+ rc=1
+ rm /mnt/ramdisk/trinity_swap
+ [[ 1 -ne 0 ]]
++ expr 1 % 128
+ RC=1
+ reset
+ exit 1

--

-- 
Toralf
pgp key: 7B1A 07F4 EC82 0F90 D4C2  8936 872A E508 0076 E94E

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
Lorenzo Colitti | 3 Mar 05:55 2015
Picon

Warning in syscall_trace_enter

Hi,

when compiling UML with -Wall -Werror, I get:

arch/um/kernel/ptrace.c: In function ‘syscall_trace_enter’:
arch/um/kernel/ptrace.c:178:32: warning: ignoring return value of
‘tracehook_report_syscall_entry’, declared with attribute
warn_unused_result [-Wunused-result]
error, forbidden warning: ptrace.c:178
make[1]: *** [arch/um/kernel/ptrace.o] Error 1

This code hasn't changed in a long time (since 1bfa2317 in May 2012, I
think), so I assume this is intentional?

Any thoughts on whether you'd like to fix this upstream, and if so
how? I can put a trivial fix into our trees (assign the result to a
dummy variable, or do "if (tracehook_report_syscall_entry()) return;")
but if you're thinking of fixing it upstream I should probably wait to
cherry-pick whatever fix you decide on. Just putting (void) in front
of the function does not silence the warning gcc. (This is apparently
working as intended - see
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25509#c26 )

Thanks,
Lorenzo

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

Gmane