Changeset 5c96b2a in mainline


Ignore:
Timestamp:
2011-06-02T21:26:44Z (13 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
ff4f073
Parents:
4a06045 (diff), 21300a2 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge from http://ho.st.dcs.fmph.uniba.sk/~mato/bzr/helenos-ext2.

Changes made against the ext2 branch parent:

  • removed .bzrignore
  • removed all traces of pipefs
Files:
31 added
10 edited

Legend:

Unmodified
Added
Removed
  • boot/Makefile.common

    r4a06045 r5c96b2a  
    9797        $(USPACE_PATH)/srv/fs/tmpfs/tmpfs \
    9898        $(USPACE_PATH)/srv/fs/fat/fat \
     99        $(USPACE_PATH)/srv/fs/ext2fs/ext2fs \
    99100        $(USPACE_PATH)/srv/taskmon/taskmon \
    100101        $(USPACE_PATH)/srv/hw/netif/ne2000/ne2000 \
     
    135136
    136137RD_APPS_NON_ESSENTIAL = \
     138        $(USPACE_PATH)/app/blkdump/blkdump \
     139        $(USPACE_PATH)/app/bnchmark/bnchmark \
    137140        $(USPACE_PATH)/app/dltest/dltest \
    138141        $(USPACE_PATH)/app/dltest2/dltest2 \
    139142        $(USPACE_PATH)/app/dload/dload \
    140143        $(USPACE_PATH)/app/edit/edit \
     144        $(USPACE_PATH)/app/ext2info/ext2info \
    141145        $(USPACE_PATH)/app/kill/kill \
    142146        $(USPACE_PATH)/app/killall/killall \
     
    146150        $(USPACE_PATH)/app/taskdump/taskdump \
    147151        $(USPACE_PATH)/app/tester/tester \
     152        $(USPACE_PATH)/app/testread/testread \
    148153        $(USPACE_PATH)/app/tetris/tetris \
    149154        $(USPACE_PATH)/app/trace/trace \
  • uspace/Makefile

    r4a06045 r5c96b2a  
    3535DIRS = \
    3636        app/bdsh \
     37        app/blkdump \
     38        app/bnchmark \
    3739        app/edit \
     40        app/ext2info \
    3841        app/getterm \
    3942        app/init \
     
    4750        app/taskdump \
    4851        app/tester \
     52        app/testread \
    4953        app/tetris \
    5054        app/trace \
     
    7276        srv/fs/tmpfs \
    7377        srv/fs/devfs \
     78        srv/fs/ext2fs \
    7479        srv/hid/adb_mouse \
    7580        srv/hid/char_mouse \
     
    149154        lib/drv \
    150155        lib/packet \
    151         lib/net
     156        lib/net \
     157        lib/ext2
    152158
    153159LIBC_BUILD = $(addsuffix .build,$(LIBC))
  • uspace/Makefile.common

    r4a06045 r5c96b2a  
    108108LIBCLUI_PREFIX = $(LIB_PREFIX)/clui
    109109
     110LIBEXT2_PREFIX = $(LIB_PREFIX)/ext2
     111
    110112LIBDRV_PREFIX = $(LIB_PREFIX)/drv
    111113LIBPACKET_PREFIX = $(LIB_PREFIX)/packet
  • uspace/app/bdsh/cmds/modules/mount/mount.c

    r4a06045 r5c96b2a  
    5151{
    5252        static char helpfmt[] =
    53             "Usage:  %s <fstype> <mp> <dev> [<moptions>]\n";
     53            "Usage:  %s <fstype> <mp> [dev] [<moptions>]\n";
    5454        if (level == HELP_SHORT) {
    5555                printf("'%s' mounts a file system.\n", cmdname);
     
    6666        unsigned int argc;
    6767        const char *mopts = "";
     68        const char *dev = "";
    6869        int rc, c, opt_ind;
    6970
     
    7980        }
    8081
    81         if ((argc < 4) || (argc > 5)) {
     82        if ((argc < 3) || (argc > 5)) {
    8283                printf("%s: invalid number of arguments. Try `mount --help'\n",
    8384                    cmdname);
    8485                return CMD_FAILURE;
    8586        }
     87        if (argc > 3)
     88                dev = argv[3];
    8689        if (argc == 5)
    8790                mopts = argv[4];
    8891
    89         rc = mount(argv[1], argv[2], argv[3], mopts, 0);
     92        rc = mount(argv[1], argv[2], dev, mopts, 0);
    9093        if (rc != EOK) {
    9194                printf("Unable to mount %s filesystem to %s on %s (rc=%d)\n",
  • uspace/app/redir/redir.c

    r4a06045 r5c96b2a  
    4949static void usage(void)
    5050{
    51         printf("Usage: %s [-i <stdin>] [-o <stdout>] [-e <stderr>] -- <cmd> [args ...]\n",
     51        fprintf(stderr, "Usage: %s [-i <stdin>] [-o <stdout>] [-e <stderr>] -- <cmd> [args ...]\n",
    5252            NAME);
    5353}
     
    8383        args = (const char **) calloc(argc + 1, sizeof(char *));
    8484        if (!args) {
    85                 printf("No memory available\n");
     85                fprintf(stderr, "No memory available\n");
    8686                return 0;
    8787        }
     
    9898       
    9999        if (rc != EOK) {
    100                 printf("%s: Error spawning %s (%s)\n", NAME, argv[0],
     100                fprintf(stderr, "%s: Error spawning %s (%s)\n", NAME, argv[0],
    101101                    str_error(rc));
     102                return 0;
    102103        }
    103104       
  • uspace/app/tester/Makefile

    r4a06045 r5c96b2a  
    2929
    3030USPACE_PREFIX = ../..
     31LIBS = $(LIBBLOCK_PREFIX)/libblock.a $(LIBEXT2_PREFIX)/libext2.a
     32EXTRA_CFLAGS = -I$(LIBBLOCK_PREFIX) -I$(LIBEXT2_PREFIX)
    3133BINARY = tester
    3234
    3335SOURCES = \
    3436        tester.c \
     37        util.c \
    3538        thread/thread1.c \
    3639        print/print1.c \
     
    5558        devs/devman2.c \
    5659        hw/misc/virtchar1.c \
    57         hw/serial/serial1.c
     60        hw/serial/serial1.c \
     61        libext2/libext2_1.c
    5862
    5963include $(USPACE_PREFIX)/Makefile.common
  • uspace/app/tester/tester.c

    r4a06045 r5c96b2a  
    6666#include "hw/serial/serial1.def"
    6767#include "hw/misc/virtchar1.def"
     68#include "libext2/libext2_1.def"
    6869#include "devs/devman1.def"
    6970#include "devs/devman2.def"
  • uspace/app/tester/tester.h

    r4a06045 r5c96b2a  
    9999extern const char *test_serial1(void);
    100100extern const char *test_virtchar1(void);
     101extern const char *test_libext2_1(void);
    101102extern const char *test_devman1(void);
    102103extern const char *test_devman2(void);
  • uspace/lib/block/libblock.c

    r4a06045 r5c96b2a  
    22 * Copyright (c) 2008 Jakub Jermar
    33 * Copyright (c) 2008 Martin Decky
     4 * Copyright (c) 2011 Martin Sucha
    45 * All rights reserved.
    56 *
     
    827828}
    828829
     830/** Read bytes directly from the device (bypass cache)
     831 *
     832 * @param devmap_handle Device handle of the block device.
     833 * @param abs_offset    Absolute offset in bytes where to start reading
     834 * @param bytes                 Number of bytes to read
     835 * @param data                  Buffer that receives the data
     836 *
     837 * @return              EOK on success or negative error code on failure.
     838 */
     839int block_read_bytes_direct(devmap_handle_t devmap_handle, aoff64_t abs_offset,
     840    size_t bytes, void *data)
     841{
     842        int rc;
     843        size_t phys_block_size;
     844        size_t buf_size;
     845        void *buffer;
     846        aoff64_t first_block;
     847        aoff64_t last_block;
     848        size_t blocks;
     849        size_t offset;
     850       
     851        rc = block_get_bsize(devmap_handle, &phys_block_size);
     852        if (rc != EOK) {
     853                return rc;
     854        }
     855       
     856        /* calculate data position and required space */
     857        first_block = abs_offset / phys_block_size;
     858        offset = abs_offset % phys_block_size;
     859        last_block = (abs_offset + bytes - 1) / phys_block_size;
     860        blocks = last_block - first_block + 1;
     861        buf_size = blocks * phys_block_size;
     862       
     863        /* read the data into memory */
     864        buffer = malloc(buf_size);
     865        if (buffer == NULL) {
     866                return ENOMEM;
     867        }
     868       
     869        rc = block_read_direct(devmap_handle, first_block, blocks, buffer);
     870        if (rc != EOK) {
     871                free(buffer);
     872                return rc;
     873        }
     874       
     875        /* copy the data from the buffer */
     876        memcpy(data, buffer + offset, bytes);
     877        free(buffer);
     878       
     879        return EOK;
     880}
     881
    829882/** Read blocks from block device.
    830883 *
  • uspace/lib/block/libblock.h

    r4a06045 r5c96b2a  
    22 * Copyright (c) 2008 Jakub Jermar
    33 * Copyright (c) 2008 Martin Decky
     4 * Copyright (c) 2011 Martin Sucha
    45 * All rights reserved.
    56 *
     
    113114extern int block_get_nblocks(devmap_handle_t, aoff64_t *);
    114115extern int block_read_direct(devmap_handle_t, aoff64_t, size_t, void *);
     116extern int block_read_bytes_direct(devmap_handle_t, aoff64_t, size_t, void *);
    115117extern int block_write_direct(devmap_handle_t, aoff64_t, size_t, const void *);
    116118
Note: See TracChangeset for help on using the changeset viewer.