Commit graph

5261 commits

Author SHA1 Message Date
spew 1c13d41b8c hjfs: Fix bugs in ref count scan check. Enable as a console command (caveat: command arguments will change as I implement more functionality) 2017-03-28 20:39:14 -05:00
cinap_lenrek e51044884b move blit roms to /sys/lib/blit 2017-03-29 01:33:16 +02:00
cinap_lenrek 5a36451a5e blit: fix mkfile 2017-03-29 01:20:13 +02:00
cinap_lenrek 0c1110ace2 kernel: fix twakeup()/timerdel() race condition
timerdel() did not make sure that the timer function
is not active (on another cpu). just acquiering the
Timer lock in the timer function only blocks the caller
of timerdel()/timeradd() but not the other way arround
(on a multiprocessor).

this changes the timer code to track activity of
the timer function, having timerdel() wait until
the timer has finished executing.
2017-03-29 00:30:53 +02:00
cinap_lenrek bfae9e08be sdnvme: NVMe controller driver (work in progress)
basic NVMe controller driver, reads and writes work.
"namespaces" show up as logical units.
uses pin/msi interrupts (no msi-x support yet).
one submission queue per cpu, shared completion queue.
no recovery from fatal controller errors.
only tested in qemu (no hardware available).

commiting this so it can be found by someone who has
hardware.
2017-03-29 00:21:35 +02:00
aiju 83dd98022d games/blit: mkfile: install into /bin/games 2017-03-28 19:48:50 +00:00
aiju 447672be5c add games/blit 2017-03-28 19:43:09 +00:00
spew f14e277c58 hjfs: fix broken dprint 2017-03-27 22:05:53 -05:00
spew 3103efb8b0 hjfs: simplify dprinting 2017-03-27 21:38:12 -05:00
spew 2e64925b91 hjfs: add simple scan check of directory entry blocks 2017-03-27 21:27:45 -05:00
spew e02bc28aaf hjfs: check: check a block if its ref count is _not_ zero. Also check all the ref counts of blocks of a directory and clean up messages 2017-03-27 17:57:10 -05:00
spew 3edac80327 hjfs: merge start of hjfs check implementation 2017-03-27 09:57:08 -05:00
spew 347bb2a7a7 hjfs: start implementation of checking a directory 2017-03-27 09:55:56 -05:00
cinap_lenrek f59ef5e8e7 devsd: handle case where theres no ifc->enable() function 2017-03-26 16:53:19 +02:00
cinap_lenrek 2b323158bd merge 2017-03-26 16:46:58 +02:00
cinap_lenrek 019bb580da devsd: check return value of ifc->enable(), don't leak unit name/user strings 2017-03-26 16:45:34 +02:00
cinap_lenrek 1889aa50c3 sdvirtio: return 1 for success in vioenable()/viodisable() 2017-03-26 16:43:32 +02:00
aiju cf8f90e1d3 file(1): recognise Xilinx bitstreams 2017-03-25 22:29:29 +00:00
spew b2b80a3da5 games/galaxy: fix exit race condition by pausing the galaxy before threadexitsall 2017-03-25 13:51:33 -05:00
spew 5aa501870b hjfs: Add comment to change the OFF size to 8 when given the chance 2017-03-25 13:49:13 -05:00
spew 85b8d253d4 games/galaxy: parallelize gravitational force calculations
Once the Barnes-Hut tree is constructed, the gravitational
force calculations can be done in parallel by dividing the
bodies up between a number of procs.
2017-03-25 13:05:47 -05:00
cinap_lenrek 4e8494aad7 pc kernel: handle PCMP and RSD being in low (kaddr) or reserved (vmap) memory
on thinkpad x1v4, the PCMP structure resides in upper reserved memory
pa=0xd7f49000 - while system memory ends at 0x0ffff000; so we have to
vmap() it instead of KADDR().

the RSD structure for ACPI might reside in low memory, so we sould
KADDR() in that case.
2017-03-25 04:08:14 +01:00
cinap_lenrek 152159a829 upas/smtp: fix cram-md5 auth, simplify doauth(), check varargs for dBprint()
- smtpcram() was replying with the challenge instead of the response... m(
- simplify doauth, use error string for auth_getuserpasswd() error logging
- enable #pragma varargck for dBprint()
2017-03-23 01:31:35 +01:00
cinap_lenrek 9b848903e6 upas/smtp: generate 128-bit random message id (was 32 bit), use dBprint(), cleanup unused variables 2017-03-23 00:36:57 +01:00
spew 04c7d5d8f6 plumb(2): Fix typo in description of Plumbdelattr (thanks sam-d) 2017-03-22 18:13:51 -05:00
spew 9811d0fec1 webfs(4): timeout is in milliseconds not seconds (thanks sam-d) 2017-03-22 18:11:23 -05:00
spew b7ee84c65d upas/smtp: Revert smtp dial string behavior to match that of old upas (thanks sam-d)
Also do some cleanup around buffers and memory management
2017-03-22 17:10:35 -05:00
spew 8b6621a360 [012568kqv]a: correctly lex full range of integers in the assemblers (thanks Ori_B)
The Plan 9 assemblers use strtoll to parse the integer literals
in their input. It turns out that this is almost correct, but
VLONG_MIN is clamped. This patch changes to use strtoull
in order to allow the full range of integers.
2017-03-22 00:04:24 -05:00
cinap_lenrek 3309f05b97 remove accidentally commited binary /sys/src/cmd/upas/fs/chkidx file (thanks mischief) 2017-03-21 20:31:15 +01:00
spew 8dd9f0e970 hjfs: Clear all refs to zero when reaming.
And a couple clarity/formatting changes
2017-03-21 14:07:18 -05:00
cinap_lenrek 1e2d95a803 ip/torrent: exit immidiately when file is complete after verification and not being in seed mode 2017-03-20 19:15:40 +01:00
cinap_lenrek b7c05975f5 ip/torrent: avoid peerid collision using truerand() instead of time(0) 2017-03-20 19:11:03 +01:00
cinap_lenrek c220100005 fortune: avoid buffer overflow for lines >= 2K, make sure index has at least one entry, use nrand()/ntruerand() for uniform distribution 2017-03-19 22:04:26 +01:00
cinap_lenrek da9b38c75c 5l,6l,8l,kl,ql,vl: allow duplicate GLOBAL symbols (from Ori Bernstein)
The plan 9 assemblers support the DUPOK flag on text symbols. They parse and
ignore it on GLOBL symbols. This patch makes it work in the linkers.

The reason I ran into this is because my programming language (Myrddin) uses
data symbols to generate type information, and it's useful to avoid
duplicating all of the type info in every file that gets generated.
2017-03-19 03:05:24 +01:00
cinap_lenrek bd178b6dc6 inst: make command window not overlap stats window in glendas riostart 2017-03-18 19:35:06 +01:00
cinap_lenrek 7ad89bd1b0 cdproto: make mdir for glenda 2017-03-18 19:07:29 +01:00
cinap_lenrek 1da795f327 diskparts(8), prep(8): add edisk in NAME section 2017-03-18 18:08:30 +01:00
cinap_lenrek c78d6569ac mus(1): fix manpage references 2017-03-18 17:56:34 +01:00
cinap_lenrek c29f30524b vga(3): complete list of vga controllers and software cursors 2017-03-18 17:13:09 +01:00
cinap_lenrek 1a2aefcf11 devmouse: refactor screen blanking logic
devmouse controls the screen blanking timeout, so move the
code there avoiding cross calls between modules. the only
function that needs to be provided is blankscreen(), which
gets called with drawlock locked.

the blank timeout is set thru /dev/mousectl now, so kernels
without devvga can set it.

blanking now only happens while /dev/mouse is read. so this
avoids accidentally blanking the screen on cpu servers that
do not have a mouse to unblank it.
2017-03-18 16:58:27 +01:00
cinap_lenrek 08453422b1 games/doom: don't spawn midi process when opening /dev/audio failed (thanks qwx) 2017-03-17 01:02:01 +01:00
cinap_lenrek 1132d1b9df tapefs: handle more cpio formats (thanks qrstuv) 2017-03-17 00:45:48 +01:00
cinap_lenrek 3d052eb2ea upas/fs: tls sni support for pop3/imap 2017-03-16 22:06:31 +01:00
cinap_lenrek cb1dc365c2 upas/fs: fix memory leaks in tls code, handle tls in a common wraptls() function 2017-03-16 00:05:08 +01:00
cinap_lenrek efddf48500 upas/fs: getting rid of the fine-grain locking...
now that locking works, its time to get rid of it.
given that the only concurrency is between the periodic reader
process and the filesystem code, just make sure the filesystem
rpc handlers do not run concurrenty while syncing is in progress
with a single qlock.
2017-03-15 19:30:33 +01:00
cinap_lenrek c8d9390070 upas/fs: more cleanup... 2017-03-14 23:46:35 +01:00
cinap_lenrek 4b08ef2c55 upas/fs: remove more debugging crap 2017-03-14 23:31:10 +01:00
cinap_lenrek 75bca30647 upas/fs: remove unused segbrk memory allocator 2017-03-14 23:21:38 +01:00
cinap_lenrek 8417787f99 upas/fs: remove idx semaphore, cannot happen as symcmbox() always called with mailbox locked 2017-03-14 23:19:17 +01:00
cinap_lenrek 508b796b27 upas/fs: fix more locking bugs, remove debugging clutter, remove planb mbox code 2017-03-14 23:06:39 +01:00