]>
git.saurik.com Git - apple/xnu.git/blob - libkern/kxld/tests/loadtest.py
2 # Copyright (c) 2009 Apple Inc. All rights reserved.
4 # @APPLE_OSREFERENCE_LICENSE_HEADER_START@
6 # This file contains Original Code and/or Modifications of Original Code
7 # as defined in and that are subject to the Apple Public Source License
8 # Version 2.0 (the 'License'). You may not use this file except in
9 # compliance with the License. The rights granted to you under the License
10 # may not be used to create, or enable the creation or redistribution of,
11 # unlawful or unlicensed copies of an Apple operating system, or to
12 # circumvent, violate, or enable the circumvention or violation of, any
13 # terms of an Apple operating system software license agreement.
15 # Please obtain a copy of the License at
16 # http://www.opensource.apple.com/apsl/ and read it before using this file.
18 # The Original Code and all software distributed under the License are
19 # distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 # EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 # INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 # FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 # Please see the License for the specific language governing rights and
24 # limitations under the License.
26 # @APPLE_OSREFERENCE_LICENSE_HEADER_END@
32 from subprocess
import call
, Popen
, PIPE
35 pipe
= Popen("/usr/sbin/kextfind \( -l -and -x -and -arch i386 \)", shell
=True, stdout
=PIPE
).stdout
37 line
= pipe
.readline()
39 kexts
.append(line
.strip())
40 line
= pipe
.readline()
42 NULL
= open("/dev/null")
46 print "Processing", kext
47 #cmd = "/sbin/kextload -ns /tmp/syms \"%s\"" % kext
48 cmd
= "/sbin/kextload \"%s\"" % kext
49 kextload
= Popen(cmd
, shell
=True, stdin
=PIPE
, stdout
=PIPE
)
51 kextload
.stdin
.write("0x1000\n");
52 retcode
= kextload
.wait()
54 print >>sys
.stderr
, "*** kextload of %s was terminated by signal %d" % (kext
, -retcode
)
56 print >>sys
.stderr
, "*** kextload of %s failed with return code %d" % (kext
, retcode
)
58 print >>sys
.stderr
, "Execution failed:", e