Rev 4633 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 4633 | Rev 4635 | ||
|---|---|---|---|
| Line 163... | Line 163... | ||
| 163 | 163 | ||
| 164 | srcf = __tcb_get()->fibril_data; |
164 | srcf = __tcb_get()->fibril_data; |
| 165 | if (stype != FIBRIL_FROM_DEAD) { |
165 | if (stype != FIBRIL_FROM_DEAD) { |
| 166 | /* Save current state */ |
166 | /* Save current state */ |
| 167 | if (!context_save(&srcf->ctx)) { |
167 | if (!context_save(&srcf->ctx)) { |
| 168 | /* |
- | |
| 169 | * Make sure to reload srcf with the current fibril |
- | |
| 170 | * address. Its value may be invalid after |
- | |
| 171 | * contex_restore() due to e.g. register recycling. |
- | |
| 172 | */ |
- | |
| 173 | srcf = __tcb_get()->fibril_data; |
- | |
| 174 | if (serialization_count) |
168 | if (serialization_count) |
| 175 | srcf->flags &= ~FIBRIL_SERIALIZED; |
169 | srcf->flags &= ~FIBRIL_SERIALIZED; |
| 176 | if (srcf->clean_after_me) { |
170 | if (srcf->clean_after_me) { |
| 177 | /* |
171 | /* |
| 178 | * Cleanup after the dead fibril from which we |
172 | * Cleanup after the dead fibril from which we |