mirror of
https://github.com/Mathewnd/Astral.git
synced 2026-10-28 05:08:22 +00:00
mouse: fix deadlock
This commit is contained in:
@@ -137,6 +137,7 @@ typedef struct {
|
||||
#define SIOCGIFHWADDR 0x8927
|
||||
#define SIOCADDRT 0x890b
|
||||
#define SIOCSIFADDR 0x8916
|
||||
#define FIONREAD 0x541B
|
||||
|
||||
typedef struct {
|
||||
char name[IFNAMSIZ];
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
|
||||
#include <ringbuffer.h>
|
||||
#include <kernel/poll.h>
|
||||
#include <mutex.h>
|
||||
|
||||
#define MOUSE_FLAG_RB 1
|
||||
#define MOUSE_FLAG_MB 2
|
||||
@@ -20,6 +21,7 @@ typedef struct {
|
||||
spinlock_t lock;
|
||||
pollheader_t pollheader;
|
||||
int flags;
|
||||
mutex_t readmutex;
|
||||
} mouse_t;
|
||||
|
||||
void mouse_init();
|
||||
|
||||
@@ -36,6 +36,7 @@ typedef struct socketops_t {
|
||||
int (*connect)(socket_t *socket, sockaddr_t *addr, uintmax_t data);
|
||||
int (*listen)(socket_t *socket, int backlog);
|
||||
int (*accept)(socket_t *server, socket_t *client, sockaddr_t *addr, uintmax_t flags);
|
||||
size_t (*datacount)(socket_t *socket);
|
||||
void (*destroy)(socket_t *socket);
|
||||
} socketops_t;
|
||||
|
||||
|
||||
@@ -172,8 +172,8 @@ int vfs_unlink(vnode_t *ref, char *path);
|
||||
int vfs_pollstub(vnode_t *node, struct polldata *, int events);
|
||||
void vfs_inactive(vnode_t *node);
|
||||
|
||||
#define VFS_LOOKUP_PARENT 1
|
||||
#define VFS_LOOKUP_NOLINK 2
|
||||
#define VFS_LOOKUP_PARENT 0x20000000
|
||||
#define VFS_LOOKUP_NOLINK 0x40000000
|
||||
#define VFS_LOOKUP_INTERNAL 0x80000000
|
||||
int vfs_lookup(vnode_t **result, vnode_t *start, char *path, char *lastcomp, int flags);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user