Aayush Rajasekaran
757aa1039f
Panic if runtime's Message has non-ID caller or receiver
2020-10-06 17:37:50 -04:00
Aayush Rajasekaran
7b556252db
Use SysErrReserved1 in the event of an actors panic
2020-10-06 05:34:53 -04:00
Aayush Rajasekaran
14ad91c53f
Add type assertion for v2 runtime
2020-10-06 01:27:45 -04:00
Steven Allen
4989b1cc90
Merge branch 'master' into asr/spec-v1
2020-09-30 09:19:12 -07:00
Jakub Sztandera
55c6b88537
Add toggle for badger, flag out gas tracing
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-29 14:49:46 +02:00
Jakub Sztandera
b7f18b4601
Disable callers
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-29 14:49:18 +02:00
Steven Allen
8b35f480c4
initial vm conversion
...
We're probably going to want to change some of these design decisions down the
road, but this is a good starting point.
* We may want to use a more general test for "is actor valid at epoch". Maybe
just a function?
* I'd like to push some of the actor metadata down into the actor types
themselves. Ideally, we'd be able to register actors with a simple
`Register(validation, manyActors...)` call.
2020-09-25 12:49:39 -07:00
Steven Allen
02dcb5e182
Merge branch 'master' into refactor/net-upgrade
2020-09-14 14:53:57 -07:00
Steven Allen
32eeb96ce7
Update to specs-actors 0.9.9
...
This patch changes the runtime interfaces, to make it possible to abstract over them.
2020-09-14 12:47:39 -07:00
Łukasz Magiera
68097132fe
Fix vm build
2020-09-14 13:45:20 +02:00
Aayush Rajasekaran
86ba21029d
Update to go state types 001afaca718c
2020-09-10 17:41:55 -04:00
Aayush Rajasekaran
316ac61875
Update to go state types 3ca0d2890090
2020-09-10 17:41:55 -04:00
Aayush Rajasekaran
6eea5dd109
Update to specs 0.9.7 and markets 0.6.0
2020-09-07 17:11:32 -04:00
Aayush Rajasekaran
39755a294a
Update to specs v0.9.6
2020-09-07 15:48:41 -04:00
anorth
a8dcea1422
Remove use of exitcode.SysErrInvalidParameters
2020-09-07 15:48:41 -04:00
austinabell
39ef3a701b
Remove unsigned message pointer from Runtime
2020-08-27 17:34:45 -04:00
Steven Allen
5733c71c50
Lint everything
...
We were ignoring quite a few error cases, and had one case where we weren't
actually updating state where we wanted to. Unfortunately, if the linter doesn't
pass, nobody has any reason to actually check lint failures in CI.
There are three remaining XXXs marked in the code for lint.
2020-08-20 20:46:36 -07:00
Aayush Rajasekaran
fe2da35a45
Move GetCircSupply out of the vm, and into stmgr
2020-08-12 15:32:07 -04:00
Whyrusleeping
ed72aa1307
implement randomness distinction
2020-08-12 10:32:39 -07:00
Steven Allen
9248e5a572
Update specs-actors, cbor-gen, and go-address
2020-08-12 10:32:39 -07:00
Dirk McCormick
aea1b0e293
fix: lint fixes
2020-08-06 12:04:10 -04:00
Dirk McCormick
4abc7416f6
fix: make DeleteActor(beneficiary) transfer funds to beneficiary (instead of burning funds)
2020-08-06 12:04:10 -04:00
Aayush Rajasekaran
c881f287ad
Update specs-actors and chain-val...again
2020-07-31 00:29:44 -04:00
Jakub Sztandera
7f722623ca
Allow messages with not enough funds for transfer to apply
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-30 16:23:30 +02:00
Aayush Rajasekaran
890f56ac38
Lock before setting up genesis msigs
2020-07-28 20:35:40 -04:00
Aayush Rajasekaran
0b1d80d3e3
Rename constants to match CE spec
2020-07-28 17:26:55 -04:00
Aayush Rajasekaran
7153bda0be
Correct MiningRewardTotal and calculation of filMined
2020-07-28 17:26:55 -04:00
Aayush Rajasekaran
de867d7a9a
Correct calculation of TotalCircSupply
2020-07-28 17:26:55 -04:00
Łukasz Magiera
637ec168df
Merge pull request #2550 from filecoin-project/fix/runtime-logs
...
fix: correctly pass variadic args from runtime log
2020-07-23 20:42:52 +02:00
frrist
bd2363178d
fix: correctly pass variadic args from runtime log
2020-07-23 10:13:16 -07:00
Steven Allen
5fc83f4d05
Refactor to use actor adt types instead of directly using HAMTs and AMTs
...
This way there's a single source of truth. Preparation for fixing
https://github.com/filecoin-project/specs-actors/issues/517 (requires changing
HAMT parameters).
2020-07-23 09:34:57 -07:00
Jakub Sztandera
aafafce083
Increase cron gas
...
Make gas check overflow safe
2020-07-17 19:49:55 +02:00
Raúl Kripalani
0484496d92
Merge branch 'next' into mock-clock
2020-07-14 18:08:26 +01:00
Łukasz Magiera
a778917806
gofmt
2020-07-13 13:35:10 +02:00
Łukasz Magiera
c1048a0353
vm: Separate logger for actors
2020-07-13 12:29:27 +02:00
Aayush Rajasekaran
eed44d12ba
Add log method to Runtime
2020-07-12 00:30:42 -04:00
Raúl Kripalani
13de81b3b2
introduce the ability to mock time.
2020-07-10 15:51:45 +01:00
Jakub Sztandera
9936439608
Merge remote-tracking branch 'origin/master' into next
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-03 14:56:06 +02:00
Łukasz Magiera
14ae8c7272
Merge pull request #2156 from filecoin-project/fix/bench-analyze
...
Improve performance of bench import analyze
2020-07-02 19:35:18 +02:00
Jakub Sztandera
567b8082c3
Back to 10 callers
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:35 +02:00
Jakub Sztandera
4db61e71da
Reduce caller depth
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:32 +02:00
Jakub Sztandera
a2fd0aad41
More on OnActorExec
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:31 +02:00
whyrusleeping
f8a1fb2321
fix vm abortf log message
2020-07-01 15:51:21 -07:00
Aayush Rajasekaran
1f57d9462c
Don't return nil interfaces from runtime.Send()
2020-06-29 01:13:45 -04:00
Jakub Sztandera
10c4fae8c0
Make gas traces smaller, strip callers in import-bench
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-25 16:46:50 +02:00
Jakub Sztandera
b91e7a9860
Update to specs actors with ChargeGas interface
...
Based on `lotus-0.6.1-chargegas` in specs-actors.
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-17 20:00:30 +02:00
Jakub Sztandera
8039701f9e
Use extra field in gastrace
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-15 19:52:04 +02:00
Jakub Sztandera
a23a87a17f
Add virtual gas
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-15 16:18:05 +02:00
Jakub Sztandera
91ea039077
Change ellipsis, more accurate timing
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-12 20:46:04 +02:00
Jakub Sztandera
cd69e57a33
Expose more callers, ellipsis unimportant ones
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-12 18:49:29 +02:00
Jakub Sztandera
c90d35869b
Add gas tracing
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 21:59:39 +02:00
Jakub Sztandera
6acc9a62f8
Split gas internally into compute gas and storage gas
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 20:37:14 +02:00
Łukasz Magiera
c8046f4597
Merge branch 'next' of github.com:filecoin-project/go-lotus into next
2020-06-11 18:24:51 +02:00
Jakub Sztandera
c3f23ddce8
Refactor ExecutionResult to ExecutionTrace
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 15:53:47 +02:00
Jeromy
512270593b
clean up some of the more spammy logs
2020-06-11 12:31:29 +02:00
Jakub Sztandera
673a972fe9
Merge remote-tracking branch 'origin/master' into next
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-02 22:49:27 +02:00
Jeromy
9b867a221a
add subcall timing to compute state output
2020-06-02 12:53:24 -07:00
Jakub Sztandera
5605aae269
Fix even more lint warnings
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-02 16:29:39 +02:00
Jakub Sztandera
d6615b6286
Cleanup many lint warnings
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-05-27 22:53:20 +02:00
frrist
9305eca97c
don't ignore transfer error in delete actor
2020-05-18 12:00:52 -07:00
frrist
0c2e4e2d4f
return correct exitcodes from vm transfer
2020-05-18 12:00:52 -07:00
Aayush Rajasekaran
8a9862bdb4
The VerifySig syscall should verify sigs
2020-05-05 15:26:34 -04:00
Aayush Rajasekaran
a047e158ed
Add some validity checks to runtime.CreateActor()
2020-04-30 14:21:29 -04:00
Whyrusleeping
cd5cbcfe4f
Merge pull request #1627 from filecoin-project/fix/safe-actor-serialization
...
vm: Don't treat actor state serialization errors as fatal
2020-04-28 10:50:53 -07:00
Łukasz Magiera
9dcb42328e
gofmt
2020-04-28 19:27:13 +02:00
Łukasz Magiera
c760a88c22
vm: don't treat actor state serialization errors as fatal
2020-04-28 15:21:31 +02:00
Aayush Rajasekaran
5900d765fd
caller must be validated exactly once
2020-04-28 00:07:47 -04:00
Aayush Rajasekaran
e46c4652a5
Forbid internal message in State Transaction()
2020-04-25 02:01:26 -04:00
Aayush Rajasekaran
832657edfb
Eliminate use of SysErrInternal, some interop changes
2020-04-25 01:55:59 -04:00
Jeromy
4153f128ef
a more betterer supply impl
2020-04-16 16:03:38 -07:00
Łukasz Magiera
706c0b8d3a
Stub syscalls.TotalFilCircSupply
2020-04-17 00:19:54 +02:00
Łukasz Magiera
072dd8b744
Merge remote-tracking branch 'origin/testnet/3' into feat/windowed-post
2020-04-10 20:38:25 +02:00
Łukasz Magiera
b0fe8b8b4c
v25: get bench to almost work
2020-04-10 14:19:06 +02:00
Łukasz Magiera
70d654e4a6
Merge pull request #1527 from filecoin-project/feat/drand
...
Initial randomness beacon implementation
2020-04-09 19:48:09 +02:00
Aayush Rajasekaran
17e9feb633
Sever the API's dependency on VM
2020-04-08 18:27:31 -04:00
Jeromy
8e0ca306d2
more wiring up of drandomness
2020-04-08 08:11:42 -07:00
Jeromy
ab51501849
remove todo
2020-04-03 15:50:52 -07:00
Jeromy
2d5becaaba
further removals
2020-04-03 15:05:59 -07:00
Jeromy
4c6fa1b2c0
handle some runtime error edge cases
2020-04-03 14:38:11 -07:00
Jeromy
8a265a0e8d
use exitcode type from specs actors instead of byte
2020-04-02 11:24:38 -07:00
Jakub Sztandera
013f441658
Fix charge gas in case of overcharge
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-01 22:55:10 +02:00
Aayush Rajasekaran
09a46e5d80
fix some gas charge bugs, and make our new account actor creation follow GFC
2020-03-25 08:25:03 -04:00
Aayush Rajasekaran
df13cfa52b
Only resolve origin to pubkey address when creating a new account actor
2020-03-24 04:43:09 -04:00
Jeromy
6fe245a278
use proper exitcodes for caller validation
2020-03-23 18:50:28 -07:00
Jeromy
8bc4195b7a
WIP: updating and getting chainval tests passing
2020-03-23 18:50:18 -07:00
Aayush Rajasekaran
ef288b8a6c
Calculate new actor addresses as per updated spec
2020-03-20 15:43:08 -04:00
Jakub Sztandera
ae40654907
Rework gas charging
2020-03-20 03:26:40 -04:00
whyrusleeping
ddf1beac6c
change gas limit to be a normal int64
2020-03-18 13:45:37 -07:00
Aayush Rajasekaran
f22f427cde
Put the correct error into ExecutionResult
2020-03-18 02:57:11 -04:00
Aayush Rajasekaran
51cf5d5f1b
New Actor Addresses should be generated as per spec
...
- The pubkey address address of the sender should be used, not the ID address
- We should use the internal callSeqNum as input (was hard-coded to zero)
- The external message nonce should be used, not the actor's nonce in the post-increment state
2020-03-18 02:57:11 -04:00
whyrusleeping
1beab85d61
Drop debug messages
2020-03-09 23:46:13 -07:00
whyrusleeping
85e17fa5b0
fix state cid accounting after 'Transaction' calls
2020-03-09 22:20:46 -07:00
whyrusleeping
114cb2d2aa
squash the spec shim and the vmcontext into the new runtime type
2020-03-09 21:44:29 -07:00