Changeset 1b11576d in mainline for uspace/srv


Ignore:
Timestamp:
2010-10-23T16:04:12Z (15 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
c77b4d6
Parents:
84c20da (diff), 58b833c (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 mainline changes.

Location:
uspace/srv
Files:
6 added
2 deleted
3 edited
1 moved

Legend:

Unmodified
Added
Removed
  • uspace/srv/devman/Makefile

    r84c20da r1b11576d  
    2929
    3030USPACE_PREFIX = ../..
    31 LIBRARY = libpci
     31BINARY = devman
    3232
    3333SOURCES = \
    34         access.c \
    35         generic.c \
    36         names.c \
    37         i386-ports.c
     34        main.c \
     35        devman.c \
     36        match.c \
     37        util.c
    3838
    3939include $(USPACE_PREFIX)/Makefile.common
  • uspace/srv/fs/fat/fat_ops.c

    r84c20da r1b11576d  
    369369        unsigned blocks;
    370370        fat_dentry_t *d;
     371        dev_handle_t dev_handle;
    371372        block_t *b;
    372373        int rc;
    373374
    374375        fibril_mutex_lock(&parentp->idx->lock);
    375         bs = block_bb_get(parentp->idx->dev_handle);
     376        dev_handle = parentp->idx->dev_handle;
     377        fibril_mutex_unlock(&parentp->idx->lock);
     378
     379        bs = block_bb_get(dev_handle);
    376380        blocks = parentp->size / BPS(bs);
    377381        for (i = 0; i < blocks; i++) {
    378382                rc = fat_block_get(&b, bs, parentp, i, BLOCK_FLAGS_NONE);
    379                 if (rc != EOK) {
    380                         fibril_mutex_unlock(&parentp->idx->lock);
     383                if (rc != EOK)
    381384                        return rc;
    382                 }
    383385                for (j = 0; j < DPS(bs); j++) {
    384386                        d = ((fat_dentry_t *)b->data) + j;
     
    390392                                /* miss */
    391393                                rc = block_put(b);
    392                                 fibril_mutex_unlock(&parentp->idx->lock);
    393394                                *rfn = NULL;
    394395                                return rc;
     
    401402                                /* hit */
    402403                                fat_node_t *nodep;
    403                                 /*
    404                                  * Assume tree hierarchy for locking.  We
    405                                  * already have the parent and now we are going
    406                                  * to lock the child.  Never lock in the oposite
    407                                  * order.
    408                                  */
    409                                 fat_idx_t *idx = fat_idx_get_by_pos(
    410                                     parentp->idx->dev_handle, parentp->firstc,
    411                                     i * DPS(bs) + j);
    412                                 fibril_mutex_unlock(&parentp->idx->lock);
     404                                fat_idx_t *idx = fat_idx_get_by_pos(dev_handle,
     405                                    parentp->firstc, i * DPS(bs) + j);
    413406                                if (!idx) {
    414407                                        /*
     
    433426                }
    434427                rc = block_put(b);
    435                 if (rc != EOK) {
    436                         fibril_mutex_unlock(&parentp->idx->lock);
     428                if (rc != EOK)
    437429                        return rc;
    438                 }
    439         }
    440 
    441         fibril_mutex_unlock(&parentp->idx->lock);
     430        }
     431
    442432        *rfn = NULL;
    443433        return EOK;
  • uspace/srv/net/tl/tcp/tcp.c

    r84c20da r1b11576d  
    20332033        if (!fibril) {
    20342034                free(operation_timeout);
    2035                 return EPARTY;
     2035                return EPARTY;  /* FIXME: use another EC */
    20362036        }
    20372037//      fibril_mutex_lock(&socket_data->operation.mutex);
  • uspace/srv/vfs/vfs_ops.c

    r84c20da r1b11576d  
    13551355                int ret = vfs_close_internal(newfile);
    13561356                if (ret != EOK) {
     1357                        fibril_mutex_unlock(&oldfile->lock);
    13571358                        ipc_answer_0(rid, ret);
    13581359                        return;
     
    13611362                ret = vfs_fd_free(newfd);
    13621363                if (ret != EOK) {
     1364                        fibril_mutex_unlock(&oldfile->lock);
    13631365                        ipc_answer_0(rid, ret);
    13641366                        return;
Note: See TracChangeset for help on using the changeset viewer.